【问题标题】:android.content.res.Resources$NotFoundException: Resource ID #0x7f070016 type #0x3 is not validandroid.content.res.Resources$NotFoundException:资源 ID #0x7f070016 类型 #0x3 无效
【发布时间】:2022-09-29 19:37:05
【问题描述】:

当我单击“trovamico”cardview 以进入该活动时,它会崩溃并且我收到此错误。下面我放了我的应用程序的 Home 和 trovamicoActivity 的代码。我试图在网站上看到,但找不到任何对我有帮助的东西。如果你需要我的 github 项目,请告诉我

错误

android.content.res.Resources$NotFoundException: Resource ID #0x7f070016 type #0x3 is not valid
    at android.content.res.Resources.getDimensionPixelSize(Resources.java:827)
    at com.google.maps.api.android.lib6.impl.ax.d(:com.google.android.gms.dynamite_mapsdynamite@221820084@22.18.20 (150700-0):5)
    at com.google.maps.api.android.lib6.impl.fe.<init>(:com.google.android.gms.dynamite_mapsdynamite@221820084@22.18.20 (150700-0):6)
    at com.google.maps.api.android.lib6.impl.bj.aA(:com.google.android.gms.dynamite_mapsdynamite@221820084@22.18.20 (150700-0):14)
    at com.google.maps.api.android.lib6.impl.cn.o(:com.google.android.gms.dynamite_mapsdynamite@221820084@22.18.20 (150700-0):2)
    at com.google.android.gms.maps.internal.o.aY(:com.google.android.gms.dynamite_mapsdynamite@221820084@22.18.20 (150700-0):26)
    at ej.onTransact(:com.google.android.gms.dynamite_mapsdynamite@221820084@22.18.20 (150700-0):4)
    at android.os.Binder.transact(Binder.java:1043)
    at com.google.android.gms.internal.maps.zza.zzH(com.google.android.gms:play-services-maps@@18.0.0:2)
    at com.google.android.gms.maps.internal.zzk.onCreateView(com.google.android.gms:play-services-maps@@18.0.0:5)
    at com.google.android.gms.maps.zzau.onCreateView(com.google.android.gms:play-services-maps@@18.0.0:7)
    at com.google.android.gms.dynamic.zad.zab(com.google.android.gms:play-services-base@@18.0.1:2)
    at com.google.android.gms.dynamic.DeferredLifecycleHelper.zaf(com.google.android.gms:play-services-base@@18.0.1:1)
    at com.google.android.gms.dynamic.DeferredLifecycleHelper.onCreateView(com.google.android.gms:play-services-base@@18.0.1:2)
    at com.google.android.gms.maps.SupportMapFragment.onCreateView(com.google.android.gms:play-services-maps@@18.0.0:1)
    at androidx.fragment.app.Fragment.performCreateView(Fragment.java:2995)
    at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:523)
    at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:261)
    at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:113)
    at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1374)
    at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:2841)
    at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:2784)
    at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:262)
    at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:478)
    at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1435)
    at android.app.Activity.performStart(Activity.java:8024)
    at android.app.ActivityThread.handleStartActivity(ActivityThread.java:3475)
    at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
    at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:223)
    at android.app.ActivityThread.main(ActivityThread.java:7656)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
    

主页 XML

<LinearLayout xmlns:android=\"http://schemas.android.com/apk/res/android\"
    xmlns:app=\"http://schemas.android.com/apk/res-auto\"
    xmlns:tools=\"http://schemas.android.com/tools\"
    android:layout_width=\"match_parent\"
    android:layout_height=\"match_parent\"
    android:orientation=\"vertical\"
    android:weightSum=\"7\"
    android:background=\"#fafafa\"
    tools:context=\"com.example.chatapp.Fragments.HomeFragment\">

    <LinearLayout
        android:layout_width=\"match_parent\"
        android:layout_height=\"wrap_content\"
        android:orientation=\"vertical\"
        android:layout_weight=\"1\"
        android:gravity=\"bottom\"
        android:background=\"@drawable/header_bg\"
        android:padding=\"12dp\"
        >
        <TextView
            android:layout_width=\"match_parent\"
            android:layout_height=\"wrap_content\"
            android:text=\"Home\"
            android:textColor=\"#fafafa\"
            android:textSize=\"30sp\"
            />
        <TextView
            android:layout_width=\"match_parent\"
            android:layout_height=\"wrap_content\"
            android:text=\"Benvenuto\"
            android:textColor=\"#fafafa\"
            android:textSize=\"25sp\"
            />

    </LinearLayout>


    <!--Creating the menu grid button-->

    <LinearLayout
        android:layout_width=\"match_parent\"
        android:layout_height=\"wrap_content\"
        android:layout_weight=\"6\"
        android:orientation=\"vertical\"
        android:weightSum=\"2\"
        android:padding=\"16dp\"
        >
        <LinearLayout
            android:layout_width=\"match_parent\"
            android:layout_height=\"wrap_content\"
            android:layout_weight=\"1\"
            android:weightSum=\"2\"
            android:padding=\"16dp\"
            >
            <androidx.cardview.widget.CardView
                android:id=\"@+id/trovamico\"
                android:layout_width=\"wrap_content\"
                android:layout_height=\"match_parent\"
                android:layout_weight=\"1\"
                app:cardElevation=\"2dp\"
                app:cardCornerRadius=\"8dp\"
                android:layout_margin=\"12dp\"
                android:background=\"#fff\"
                android:clickable=\"true\"
                android:focusable=\"true\">
                <LinearLayout
                    android:layout_width=\"match_parent\"
                    android:layout_height=\"match_parent\"
                    android:orientation=\"vertical\"
                    android:gravity=\"center\"
                    >
                    <ImageView
                        android:layout_width=\"match_parent\"
                        android:layout_height=\"wrap_content\"
                        android:src=\"@drawable/ic_baseline_plus_one_24\"
                        />
                    <TextView
                        android:layout_width=\"match_parent\"
                        android:layout_height=\"wrap_content\"
                        android:text=\"  Trova un amico   \"
                        android:textAlignment=\"center\"
                        />
                </LinearLayout>

            </androidx.cardview.widget.CardView>

            <androidx.cardview.widget.CardView
                android:id=\"@+id/cercaincontro\"
                android:layout_width=\"wrap_content\"
                android:layout_height=\"match_parent\"
                android:layout_weight=\"1\"
                app:cardElevation=\"2dp\"
                app:cardCornerRadius=\"8dp\"
                android:layout_margin=\"12dp\"
                android:background=\"#fff\"
                android:clickable=\"true\"
                >
                <LinearLayout
                    android:layout_width=\"match_parent\"
                    android:layout_height=\"match_parent\"
                    android:orientation=\"vertical\"
                    android:gravity=\"center\"
                    >
                    <ImageView
                        android:layout_width=\"match_parent\"
                        android:layout_height=\"wrap_content\"
                        android:src=\"@drawable/ic_baseline_plus_one_24\"
                        />
                    <TextView
                        android:layout_width=\"match_parent\"
                        android:layout_height=\"wrap_content\"
                        android:text=\"Cerca un incontro\"
                        android:textAlignment=\"center\"
                        />
                </LinearLayout>

            </androidx.cardview.widget.CardView>


        </LinearLayout>

        <LinearLayout
            android:layout_width=\"match_parent\"
            android:layout_height=\"wrap_content\"
            android:layout_weight=\"1\"
            android:weightSum=\"2\"
            android:padding=\"16dp\"
            >

            <androidx.cardview.widget.CardView
                android:layout_width=\"wrap_content\"
                android:layout_height=\"match_parent\"
                android:layout_weight=\"1\"
                app:cardElevation=\"2dp\"
                app:cardCornerRadius=\"8dp\"
                android:layout_margin=\"12dp\"
                android:background=\"#fff\"
                android:clickable=\"true\"
                >

                <LinearLayout
                    android:layout_width=\"335dp\"
                    android:layout_height=\"match_parent\"
                    android:gravity=\"center\"
                    android:orientation=\"vertical\">

                    <ImageView
                        android:layout_width=\"match_parent\"
                        android:layout_height=\"wrap_content\"
                        android:src=\"@drawable/ic_baseline_plus_one_24\" />

                    <TextView
                        android:layout_width=\"match_parent\"
                        android:layout_height=\"wrap_content\"
                        android:text=\"Organizza un incontro\"
                        android:textAlignment=\"center\" />
                </LinearLayout>

            </androidx.cardview.widget.CardView>

        </LinearLayout>

    </LinearLayout>

Trovamico活动

public static final String TAG = \"addreess\";

//private GoogleMap mMap;
private FragmentsTrovamicoBinding binding;
LatLng latLng;


private DatabaseReference reference;
private FirebaseUser firebaseUser;

List<String> addresses, genders;

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

    binding = FragmentsTrovamicoBinding.inflate(getLayoutInflater());
    setContentView(binding.getRoot());
    Log.d(TAG, \"String addreess: \" + addresses);
    addresses = new ArrayList<>();
    genders = new ArrayList<>();

    firebaseUser = FirebaseAuth.getInstance().getCurrentUser();
    reference = FirebaseDatabase.getInstance().getReference(\"Users\").child(firebaseUser.getUid());

  

    ValueEventListener eventListener = new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot snapshot) {
            for (DataSnapshot dataSnapshot: snapshot.getChildren()) {
                reference.child(\"address\").get().addOnCompleteListener(task -> {
                    if (task.isSuccessful()) {
                        String address = task.getResult().getValue().toString();
                        addresses.add(address);
                    }
                });
                Log.d(TAG, \"String addreess: \" + addresses);
                reference.child(\"gender\").get().addOnCompleteListener(task -> {
                    if (task.isSuccessful()) {
                        String gender = task.getResult().getValue().toString();
                        genders.add(gender);
                    }
                });
            }
        }

        @Override
        public void onCancelled(@NonNull DatabaseError error) {

        }
    };

    reference.addListenerForSingleValueEvent(eventListener);

    // Obtain the SupportMapFragment and get notified when the map is ready to be used.
    SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
            .findFragmentById(R.id.map);
    mapFragment.getMapAsync(this);
}

@Override
public void onMapReady(GoogleMap googleMap) {

    for (int i = 0; i < addresses.size(); i++) {
        String user_address = addresses.get(i);
        if (!user_address.equals(\"To be added\")) {
            Log.d(TAG, \"String addreess: \" + addresses);
            String user_gender = genders.get(i);
            latLng = getLocationFromAddress(user_address);
            MarkerOptions markerOptions = new MarkerOptions();
            markerOptions.position(latLng);
            markerOptions.title(\"You\");
            Log.d(TAG, \"String addreess: \" + addresses);
            markerOptions.icon(BitmapFromVector(getApplicationContext(), (user_gender.equals(\"Male\")) ? R.drawable.male : R.drawable.female));
            googleMap.clear();
            googleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(latLng, 5));
            googleMap.addMarker(markerOptions);
        }
    }
}

public LatLng getLocationFromAddress(String strAddress) {

    Geocoder coder = new Geocoder(this);
    List<Address> address;
    LatLng p1;

    try {
        address = coder.getFromLocationName(strAddress, 5);
        if (address == null) {
            return null;
        }
        Address location = address.get(0);
        p1 = new LatLng(location.getLatitude(), location.getLongitude());

        return p1;
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}
  • TrovamicoActivity 发布代码
  • 已编辑的问题,是谷歌地图活动
  • 在 CardView 存在的地方也上传 xml
  • 完成了,你可以检查一下吗?

标签: java android


【解决方案1】:

你有资源问题。 在可绘制文件夹中可能找不到图像。

将 xhdpi 和其他文件夹资源复制到默认的可绘制文件夹中。

将drawable-......文件夹中的所有文件复制到drawable文件夹中

【讨论】:

  • 我应该怎么办?我附上了截图imgur.com/a/zQ6QDE9
  • @frongi 将drawable-......文件夹中的所有文件复制到drawable文件夹
  • drawble中所有文件的副本....文件夹必须在drawble中。有些文件可能是重复的。更换它们。在执行此操作之前,请对 drawble 文件夹进行备份,以便在遇到问题时可以返回。我希望这行得通。
  • imgur.com/a/U1KjpZD 当我尝试启动应用程序时出现此错误,我也有替换但 idk 是这个
  • 我无法替换,因为一个是 .png,一个是 .xml。我现在该怎么办?
【解决方案2】:

我通过将丢失的文件复制到可绘制文件夹中解决了这个问题。

首先,您必须找到丢失资源的名称。在项目窗口中,通过双击存在于 app/release 文件夹中的 apk 文件打开生成的 apk 文件。点击resources.arsc文件,找到ID = 0x7f070016的文件。所以你会看到资源文件的名称为 abc_cab_background_top_material.xml

https://android.googlesource.com/platform/frameworks/support/+/b19cba1/v7/appcompat/res/drawable/abc_cab_background_top_material.xml

复制此文件内容并放在 drawable 文件夹下。然后您的应用程序将找到所需的资源文件并且不会崩溃。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-02-02
    • 2018-06-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多