我正在进行配置应用程序的活动,并且必须用一行将配置窗口的各个部分分开。我使用divider_horizontal_bright
了以下示例:
http://android.cryx.li/doku.php?id=know:settings:start
但是它不起作用!当我在Android手机上测试时,它没有显示水平线。为什么?
我正在使用Android 2.1
我正在进行配置应用程序的活动,并且必须用一行将配置窗口的各个部分分开。我使用divider_horizontal_bright
了以下示例:
http://android.cryx.li/doku.php?id=know:settings:start
但是它不起作用!当我在Android手机上测试时,它没有显示水平线。为什么?
我正在使用Android 2.1
Answers:
尝试此链接。... 水平尺
这应该够了吧。
下面的代码是xml。
<View
android:layout_width="fill_parent"
android:layout_height="2dip"
android:background="#FF00FF00" />
如果这不起作用:
<ImageView
android:layout_gravity="center_horizontal"
android:paddingTop="10px"
android:paddingBottom="5px"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:src="@android:drawable/divider_horizontal_bright" />
试试这个原始视图:
<View
android:layout_width="fill_parent"
android:layout_height="1dip"
android:background="#000000" />
android:scaleType="fitXY"
才能使ImageView解决方案正常工作(也许仅在新的Android版本中需要这样做吗?)
padding
为margin
,否则这些都不起作用。
只需要一行
...
<View android:id="@+id/primerdivisor"
android:layout_height="2dp"
android:layout_width="fill_parent"
android:background="#ffffff" />
...
定义自己的视图怎么样?我使用下面的类,在设置了背景颜色的视图周围使用LinearLayout。这使我可以为其预定义布局参数。如果不需要,只需扩展View并设置背景颜色即可。
public class HorizontalRulerView extends LinearLayout {
static final int COLOR = Color.DKGRAY;
static final int HEIGHT = 2;
static final int VERTICAL_MARGIN = 10;
static final int HORIZONTAL_MARGIN = 5;
static final int TOP_MARGIN = VERTICAL_MARGIN;
static final int BOTTOM_MARGIN = VERTICAL_MARGIN;
static final int LEFT_MARGIN = HORIZONTAL_MARGIN;
static final int RIGHT_MARGIN = HORIZONTAL_MARGIN;
public HorizontalRulerView(Context context) {
this(context, null);
}
public HorizontalRulerView(Context context, AttributeSet attrs) {
this(context, attrs, android.R.attr.textViewStyle);
}
public HorizontalRulerView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
setOrientation(VERTICAL);
View v = new View(context);
v.setBackgroundColor(COLOR);
LayoutParams lp = new LayoutParams(
LayoutParams.MATCH_PARENT,
HEIGHT
);
lp.topMargin = TOP_MARGIN;
lp.bottomMargin = BOTTOM_MARGIN;
lp.leftMargin = LEFT_MARGIN;
lp.rightMargin = RIGHT_MARGIN;
addView(v, lp);
}
}
以编程方式或在Eclipse中使用它(自定义和库视图-只需将其拉入布局即可)。
使用这个.....你会喜欢的
<TextView
android:layout_width="fill_parent"
android:layout_height="1px"
android:text=" "
android:background="#anycolor"
android:id="@+id/textView"/>