Android中R.layout.xxx,关于明明有资源文件,但是却调用不到的问题。

本文介绍了一个常见的Android开发问题:错误地导入了Android SDK中的R类而非项目自身的R类,并给出了正确的解决方法。

直接给结论

导报没有导入正确。

错误:

import android.R;

正确:

import com.kus.myfragment.R;

要导入自己项目的R类。而不是Android的R类。

package com.example.skeletonscreen import android.graphics.Color import android.os.Bundle import android.os.Handler import android.os.Looper import android.view.View import android.view.ViewGroup import android.widget.LinearLayout import androidx.activity.enableEdgeToEdge import androidx.appcompat.app.AppCompatActivity import androidx.constraintlayout.widget.ConstraintLayout import androidx.core.view.ViewCompat import androidx.core.view.WindowInsetsCompat import com.facebook.shimmer.ShimmerFrameLayout import com.ethanhua.skeleton.Skeleton class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val mainView = findViewById<ConstraintLayout>(R.id.main) val skeletonScreen= Skeleton.bind(mainView) .show() // shimmerLayout = findViewById(R.id.shimmerLayout) // listContainer = findViewById(R.id.container_list) // // // 动态生成 5 个骨架条目 // generateListSkeletonItems(5) // 模拟数据加载 Handler(Looper.getMainLooper()).postDelayed({ // shimmerLayout.stopShimmer() // shimmerLayout.visibility = View.GONE // // // 替换为真实布局 skeletonScreen.hide() // val realContent = layoutInflater.inflate(R.layout.activity_main, null) // val rootView = findViewById<ViewGroup>(android.R.id.content) // rootView.addView(realContent) }, 2000) } }<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout 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:id="@+id/main" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <!-- activity_profile_skeleton.xml --> <!-- activity_profile.xml --> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:padding="16dp"> <ImageView android:id="@+id/ivAvatar" android:layout_width="80dp" android:layout_height="80dp" android:src="@drawable/timer" /> <TextView android:id="@+id/tvName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="用户名" android:textSize="20sp" android:textStyle="bold" android:layout_marginTop="16dp"/> <TextView android:id="@+id/tvBio" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="用户简介内容..." android:layout_marginTop="8dp"/> <View android:layout_width="match_parent" android:layout_height="1dp" android:background="#CCCCCC" android:layout_marginTop="16dp"/> <TextView android:id="@+id/tvPostsTitle" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="动态" android:textSize="18sp" android:layout_marginTop="16dp"/> <ListView android:id="@+id/lvPosts" android:layout_width="match_parent" android:layout_height="0dp" android:layout_weight="1" android:layout_marginTop="8dp"/> </LinearLayout> </androidx.constraintlayout.widget.ConstraintLayout>这是我的代码哪里出了问题
最新发布
09-04
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值