3

所以,我正在尝试制作一个动态 UI,并且我想为其添加一个分隔符。不幸的是,我只能找出如何用 XML 做一个。可以转这个吗

<ImageView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/seperator"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:paddingBottom="2dp"
    android:paddingLeft="5dp"
    android:paddingRight="5dp"
    android:paddingTop="2dp"
    android:scaleType="fitXY"
    android:src="@android:drawable/divider_horizontal_dark" />

进入程序代码?

我最好的尝试是

ImageView seperator=new ImageView(this);
seperator.setImageDrawable(drawable.divider_horizontal_dark);
4

3 回答 3

5

将它放在一个额外的布局文件中,并在您需要时在代码中对其进行扩充 - 我认为您想要做的应该是最简单的方法。

在您的活动中:

View v = LayoutInflater.from(this).inflate(R.layout.seperator, null);

如果你膨胀一个布局:

LinearLayout ll = (LinearLayout) LayoutInflater.from(this).inflate(R.layout.custom_layout, null);
TextView tv = (TextView) ll.findViewById(R.id.tv);
于 2012-06-21T17:13:06.583 回答
4

有一个网站可以为您转换。您可以设计界面,eclipse然后将生成的 xml 提交到XMLtoJAVA在线转换器,它应该会为您完成。

于 2013-05-07T07:38:06.367 回答
0

您还可以创建视图,定义背景并使用 LayoutParams 添加它

    ViewGroup container = (ViewGroup) findViewById(R.id.container); 
    View separator = new View(context);
    separator.setBackgroundColor(Color.Black);
    LayoutParams layoutParams = new LayoutParams(LayoutParams.MATCH_PARENT, 2);

    container.addView(separator, layoutParams);
于 2012-06-21T17:37:32.623 回答