如何以编程方式在textview图层下添加一行

时间:2013-07-29 14:42:48

标签: android

我希望在java中以编程方式在textView下面添加一行,而不是在xml中。 我有textView如下:

textView.setText(DisplayName);

我该怎么做?我有一个textview支持文本和复选框,我想在同一个下面添加一行。任何线索?

谢谢! 贾斯汀

4 个答案:

答案 0 :(得分:2)

您可能正在寻找分隔符。你可以通过'伪造'一个分线器来达到这个目的。将正常视图添加到父视图,高度为1dp。

Android - Dynamically Add Views into View

如果您从xml加载视图并想以编程方式添加该行:

LayoutInflater vi = (LayoutInflater) getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);

ViewGroup layout = vi.inflate(R.layout.MyParentLayout, null);

View separator = new View(Context context);

设置视图,其layoutparams设置其高度:http://developer.android.com/reference/android/view/View.html#setLayoutParams(android.view.ViewGroup.LayoutParams)

layout.addView(separator);

如果您以编程方式创建布局:

new LinearLayout layout = new LinearLayout(context);`//或任何你想要的布局

我正在手机上写这篇文章,因此可能包含一些错误。

答案 1 :(得分:1)

在textview之后将线条视图添加到父版面。

View ruler = new View(myContext); ruler.setBackgroundColor(0xFF00FF00);
parentLayout.addView(ruler, new ViewGroup.LayoutParams( ViewGroup.LayoutParams.FILL_PARENT, 2));

答案 2 :(得分:1)

如果您尝试为文字加下划线,请尝试此操作(来自https://stackoverflow.com/a/10947374/413254):

textview.setPaintFlags(textview.getPaintFlags() | Paint.UNDERLINE_TEXT_FLAG);

如果您正在尝试创建各种分隔符,请使用RajaReddy建议的内容。

答案 3 :(得分:1)

<View
                android:layout_width="wrap_content"
                android:layout_height="2dip"
                android:layout_below="@+id/topics_text"
                android:layout_marginTop="7dp"
                android:layout_margin="10dp"
                android:background="#ffffff" />