gpt4 book ai didi

android - 无法访问 Adob​​e Native Extension Android 布局 xml

转载 作者:行者123 更新时间:2023-11-30 03:54:20 25 4
gpt4 key购买 nike

为 Android 构建 native 扩展,我尝试集成 google mapview,当我尝试从布局访问属性时,它运行良好。错误出现在扩展 map View 的 Activity 类中:

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_map);

mapView = (MapView)findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true); // <- this crashes, same for textview etc.

加载的 xml 如下所示:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >

<TextView
android:id="@+id/textfield1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="0dp"
android:text="@string/hello_world"
android:textColor="#ff0000" />

<com.google.android.maps.MapView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/mapview"
android:layout_width="300dp"
android:layout_height="300dp"
android:clickable="true"
android:apiKey="0cy94dNyuBcfF0aNZhB_JKpF4dQtxgDWhCXppRw" />

<Button
android:id="@+id/button_clear"
android:layout_marginTop="20dp"
android:layout_marginLeft="20dp"
android:layout_width="100dp"
android:layout_height="40dp"
android:background="@android:color/black"
android:text="@string/clear"
android:textColor="@android:color/white" />

<Button
android:id="@+id/button_add"
android:layout_marginTop="20dp"
android:layout_marginLeft="20dp"
android:layout_width="100dp"
android:layout_height="40dp"
android:background="@android:color/black"
android:text="@string/add"
android:textColor="@android:color/white" />

到目前为止我发现和检查的内容:

  • 扩展加载正确,因为 xml 布局中的 map View 正确显示
  • res 文件夹被复制并编译到 ANE(解压检查)和 APK(解压检查)
  • 所有布局元素都存在问题,应用程序在访问 TextView 时也会崩溃。所以这不是特定于 map 的问题
  • 项目在独立运行时工作正常,所以它必须是关于扩展的东西

我读过一些关于使用 getRessourceId 的帖子,但这意味着需要将 FREContext 注入(inject)到 Activity 中,这对我来说听起来很奇怪。

任何提示真的很感激!谢谢,M。

最佳答案

想出了第一部分。实际上,您的 Activity 中有一个静态 FREContext。在您的扩展函数中将此上下文设置为一个,您将获得:

    @Override
public FREObject call(FREContext context, FREObject[] args) {

MyActivity.freContext = context;

在您的 Activity 中,您通过它的 resourceId 设置布局:

    setContentView( freContext.getResourceId("layout.my_layout_xml"));

希望这对某人有帮助。

关于android - 无法访问 Adob​​e Native Extension Android 布局 xml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13586017/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com