gpt4 book ai didi

android - 使用 gridlayout 获取 Inflate Exception

转载 作者:行者123 更新时间:2023-11-30 04:43:05 26 4
gpt4 key购买 nike

大家好,我得到了 android.view.InflateException: Binary XML file line #1: Error inflating class linearlayout, Caused by: java.lang.ClassNotFoundException: android.view.linearlayout in loader dalvik.system.PathClassLoader[/data ]/app/com.project.news-2.apk] 在下面的指示行中。

看一看

主页 Activity

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);
setContentView(R.layout.main);

}

HomeActivity 内部的另一个方法

LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);

View layout = inflater.inflate(R.layout.dashboard_home ,(ViewGroup) findViewById(R.id.layout_root));


GridView grid = (GridView) layout.findViewById(R.id.gridview);


adapter = new HomeAdapter(this);

adapter.setItems(config); grid.setAdapter(adapter);

家庭适配器

public View getView(int position, View convertView, ViewGroup parent) {



ViewHolder holder

if (convertView == null) { // if it's not recycled,



convertView = mInflater.inflate(R.layout.dashboard_home, null); //exception

convertView.setLayoutParams(new GridView.LayoutParams(90, 90));


holder = new ViewHolder();

holder.title = (TextView) convertView.findViewById(R.id.titleIcon);

holder.icon = (ImageView) convertView.findViewById(R.id.imageIcon);

convertView.setTag(holder);


} else {

holder = (ViewHolder) convertView.getTag();

}

主.xml

    <?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:id="@+id/layout_root" android:orientation="vertical"

android:layout_width="fill_parent" android:layout_height="fill_parent">

<LinearLayout style="@style/TitleBar">

<ImageView style="@style/TitleBarLogo"

android:contentDescription="Text testing" />



<ImageView style="@style/TitleBarSeparator" />

<TextView style="@style/TitleBarText" />



<ImageButton style="@style/TitleBarAction"

android:contentDescription="@string/description_about" android:src="@drawable/info"

android:onClick="onClickAbout" />

</LinearLayout>



<GridView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:id="@+id/gridview"

android:numColumns="2"

/>



</LinearLayout>

dashboard_home.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical" android:layout_width="fill_parent"

android:layout_height="fill_parent" android:padding="10dp">

<ImageView android:id="@+id/imageIcon" android:layout_width="50dip"

android:layout_height="50dip" android:layout_alignParentRight="true"

android:layout_marginRight="3dp" />

<TextView android:id="@+id/titleIcon" android:layout_width="wrap_content"

android:layout_height="wrap_content" android:layout_centerHorizontal="true"

android:layout_alignParentLeft="true" android:layout_marginLeft="3dp"

android:textColor="#FFF" />

</LinearLayout>

最佳答案

删除这两行并在 HomeActivity 中运行您的代码。

LayoutInflater inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);     
View layout = inflater.inflate(R.layout.dashboard_home ,(ViewGroup) findViewById(R.id.layout_root));

异常发生的原因是因为您将 dashboard_home.xml 膨胀到它本身..

关于android - 使用 gridlayout 获取 Inflate Exception,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5590855/

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