我正在使用以下XML文件来创建布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget28"
android:layout_width="fill_parent"
android:layout_height="80px">
<LinearLayout
android:id="@+id/linearText"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:orientation="vertical"
android:layout_marginLeft="10px"
android:layout_marginTop="10px">
<TextView
android:id="@+id/txtAirLineCodeLv"
android:text="TextView" />
<ImageView
android:id="@+id/StopDetailBtnLv"/>
<TextView
android:id="@+id/txtPriceLv"
android:text="TextView" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imgFlightLogoLv" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txtTotalDurationLv"
android:text="TextView" />
<TextView
android:id="@+id/txtStopCountLv"
android:text="TextView" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearText3"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txtOrgLv"
android:text="TextView" />
</LinearLayout>
</LinearLayout>
但是当我使用以下代码加载此文件时:
view = context.LayoutInflater.Inflate(Resource.Layout.CustomizeSearchResult, parent, false) as LinearLayout;
抛出RuntimeException
。我想我的布局有问题,但我找不到。因为当我加载另一个XML文件代替它时,没有显示错误并且它成功运行。
答案 0 :(得分:1)
您忘了为TextViews和ImageView指定layout_height和layout_width
答案 1 :(得分:1)
此处您未将height
和weight
设置为ImageView
和TextView
。
如果您为UI元素提供了适当的height and weight
,则可以看到图形布局。
如果要以编程方式为UI元素设置高度和重量,可以使用java设置高度和重量。您无需担心XML
布局中给出的尺寸。
我确信这些身高和体重将在运行时时更改。
像这样更改你的xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget28"
android:layout_width="fill_parent"
android:layout_height="80px">
<LinearLayout
android:id="@+id/linearText"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:orientation="vertical"
android:layout_marginLeft="10px"
android:layout_marginTop="10px">
<TextView
android:id="@+id/txtAirLineCodeLv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<ImageView
android:id="@+id/StopDetailBtnLv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/txtPriceLv"
android:text="TextView"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/imgFlightLogoLv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>
<LinearLayout
android:id="@+id/linearText2"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txtTotalDurationLv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
<TextView
android:id="@+id/txtStopCountLv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearText3"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextView
android:id="@+id/txtOrgLv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TextView" />
</LinearLayout>
</LinearLayout>