我在xml
之后动态膨胀<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dip"
>
<ImageView
android:id="@+id/grid_img"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:scaleType="fitXY"
android:src="@drawable/nature3"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/img_name"
android:text=",jfjgf xxfbdg fd dfhs lhl;fsfladsfh; jkhsdl;fshkjfl;fks; l;hflsaf"
android:inputType="textMultiLine"
android:maxLines="2"
android:ellipsize="end"
android:layout_alignBottom="@+id/grid_img"
android:layout_alignRight="@+id/grid_img"
android:layout_alignLeft="@+id/grid_img"
/>
</RelativeLayout>
我使用以下代码通过充气添加此xml。
RelativeLayout v = (RelativeLayout)inf.inflate(R.layout.ui_three, null);
现在问题是我在xml中定义的属性被忽略了,我在Android手机上获得了跟随UI。
我正在将textview与图像的上边缘对齐,而在xml中它与图像的底部对齐。
解决此问题的任何方法。
答案 0 :(得分:2)
将要添加新布局的父布局作为第二个参数传递:
RelativeLayout v = (RelativeLayout)inf.inflate(R.layout.ui_three, parent);
然后,膨胀的布局将从父级继承布局参数。如果您在尝试将新布局添加到其父级时遇到错误,请使用备用LayoutInflator
方法,该方法允许您阻止充气机自动将新布局附加到父级:
RelativeLayout v = (RelativeLayout)inf.inflate(R.layout.ui_three, parent, false);