【发布时间】:2012-03-29 22:47:44
【问题描述】:
我正在开发 Android v2.2 应用程序。
我有一个Fragment。在我的片段类的onCreateView(...) 回调中,我将布局膨胀到片段中,如下所示:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.login, null);
return view;
}
上面膨胀的布局文件是(login.xml):
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Username" />
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Username" />
</LinearLayout>
我想为上面的<LinearLayout> 元素设置一个paddingTop,我想在Java 代码中而不是在xml 中进行。
如何在我的片段 Java 类代码中将paddingTop 设置为<LinearLayout> ??
【问题讨论】:
-
您需要为您的 LinearLayout 分配一个 ID,以便您可以使用
findViewById找到它,然后在其上调用setPadding。 -
@AleksG 通常是的,但考虑到 LinearLayout 是膨胀层次结构的根元素,这里没有必要。
view已经是LinearLayout了,这种情况下不用再找了。鉴于这是一个特殊的。 -
@alextsc:是的,同意。尽管如此,我仍然更喜欢将 ID 分配给我在应用程序中可能引用的任何内容。
标签: android android-layout android-emulator android-widget padding