如何在活动中的编辑文本之间放置水平除数线


Answers:


144

尝试此链接。... 水平尺

这应该够了吧。

下面的代码是xml。

<View
    android:layout_width="fill_parent"
    android:layout_height="2dip"
    android:background="#FF00FF00" />

添加此行-> android:layout_above =“ @ + id / imageView2”,以相对于显示/查看行。它正在工作
gnganapath

太棒了!尝试了各种方法。这最有效!
geeky_monster

137

如果这不起作用:

  <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" />

9
+1用于提供完整的View示例,而不仅仅是属性,对于使用Android自己的分隔器drawable的ImageView示例。ImageView似乎更可取,因为它使用了系统/主题提供的样式。
spaaarky21 2013年

同时提供两者的绝佳解决方案。图片版本未显示“栏”,因此我选择了查看版本。
TheIcemanCometh 2015年

2
好答案!只需注意:可能需要添加一些android:scaleType="fitXY"才能使ImageView解决方案正常工作(也许仅在新的Android版本中需要这样做吗?)
Alberto M

1
您应该将替换paddingmargin,否则这些都不起作用。
抗体

7

只需要一行

...
<View android:id="@+id/primerdivisor"
android:layout_height="2dp"
android:layout_width="fill_parent"
android:background="#ffffff" /> 
...

4

定义自己的视图怎么样?我使用下面的类,在设置了背景颜色的视图周围使用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中使用它(自定义和库视图-只需将其拉入布局即可)。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.