java - 如何创建水平白色分隔线以使用 java 添加到我的布局?

标签 java android android-relativelayout

我需要用 java 创建一个白色分隔线。我需要将它添加到我的 relativelayout 中,但总是使用 java,因为我正在学习将 relativelayout 与 java 一起使用。

我知道如何使用 xml 创建行:

<View
    android:layout_gravity="center_horizontal"
    android:layout_width="fill_parent"
    android:layout_height="1dip"
    android:background="#808080"
    android:layout_marginTop="5px"/>

但现在我需要用 java 代码将它添加到我的相对布局中:

        RelativeLayout rl= new RelativeLayout(this); //Contiene el menu superior con sus botones.

        home= new ImageView(this);
        home.setImageResource(R.drawable.but_home_up);
        rl.addView(home);
        homeParams.addRule(RelativeLayout.ALIGN_PARENT_LEFT); 
        homeParams.setMargins(10, 0, 0, 0);
        home.setId(5);
        home.setLayoutParams(homeParams);

我想将分隔线放在 Home imageView 的下方。

我该怎么做?

我试过这段代码,但它不起作用......它正在绘制一条垂直线,我想要水平线:

    View line = new View(this);
    RelativeLayout.LayoutParams lineParams = new RelativeLayout.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT);
    lineParams.setMargins(0,0,10,0);
    lineParams.addRule(RelativeLayout.BELOW,5);
    lineParams.addRule(RelativeLayout.CENTER_HORIZONTAL);
    lineParams.width=1;
    line.setId(6);
    line.setBackgroundColor(0xFF808080);
    line.setLayoutParams(lineParams);
    rl.addView(line);

谢谢

最佳答案

View v = new View(this);
RelativeLayout.LayoutParams viewLp = new LayoutParams(LayoutParams.FILL_PARENT, 1);
viewLp.addRule(RelativeLayout.BELOW, imageViewID);
viewLp.addRule(RelativeLayout.CENTER_HORIZONTAL);
viewLp.setMargins(0, 5, 0, 0);

v.setLayoutParams(viewLp);
v.setBackgroundColor(0x808080);

rl.addView(v);

将您上一个代码示例中的 lineParams.width = 1; 替换为 lineParams.height = 1;。它应该有效。

关于java - 如何创建水平白色分隔线以使用 java 添加到我的布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9602359/

相关文章:

java - 为什么 =+ 不会导致编译错误?

带有两台显示器的 Android Studio

Android - getHeight() 和 getWidth()

java - 从 Java 代码调用 Spring Batch

java - 解析Android获取用户列表

java - 如何缩短这段java代码?

android:layout_centerInParent 不起作用

android - 如何避免 FAB 与 BottomNavigationView 重叠?

java - 使用 GUI 时暂停程序

android - Espresso - 对全屏 Activity 执行操作失败 - InjectEventSecurityException