Android + 线性布局上的 setDividerDrawable?

标签 android drawable android-linearlayout

我对动态地向 LinearLayout 的子项添加分隔线很感兴趣。我在文档中看到 LinearLayout 包含一个 CONST“SHOW_DIVIDER_MIDDLE”以及获取和设置分隔符方法。有人可以告诉我如何实现吗?谢谢!

“这不起作用”

布局 xml:

<LinearLayout android:id="@+id/bar"
        android:orientation="horizontal" 
        android:layout_height="40dip" android:layout_width="fill_parent"
        android:background="@drawable/ab_background_gradient" android:gravity="right|center_vertical">

        <!-- sort button -->
        <Button android:id="@+id/sortBtn" android:background="@drawable/defaultt"
                android:layout_width="30dip" android:layout_height="30dip" android:onClick="sortThis" />

        <!-- add button -->
        <Button android:id="@+id/addBtn" android:background="@drawable/defaultt"
                android:layout_width="30dip" android:layout_height="30dip" android:onClick="addThis" />
    </LinearLayout>

主要内容:

...
private void setupViews() {
        //bar
        mBar = (LinearLayout) findViewById(R.id.bar);
        mBar.setDividerDrawable(R.drawable.divider);
}

最佳答案

您需要将从 R.drawable.divider 返回的 Resource id 转换为 Drawable 对象,ala:

import android.content.res.Resources;
...

public void onCreate(Bundle savedInstanceState) {
    ...

    Resources res = this.getResources();

    LinearLayout layout = new LinearLayout(this);
    layout.setShowDividers(LinearLayout.SHOW_DIVIDER_MIDDLE | LinearLayout.SHOW_DIVIDER_BEGINNING | LinearLayout.SHOW_DIVIDER_END);
    layout.setDividerDrawable(res.getDrawable(R.drawable.divider));

    ...
 }
...

假设您的资源目录中有一个名为“divider.jpg”(或类似文件)的文件。

关于Android + 线性布局上的 setDividerDrawable?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6820194/

相关文章:

android - 尝试查找 BLE 设备时如何使用 LeScanCallback?

android - 在 Android 2.3 中编辑位图

android - 可点击 View 中的默认选择器背景

android - 在 LinearLayout 中移动 android 组件

java - 检查弹出菜单是否变为非 Activity 状态/检查弹出菜单是否可见

java - 多个可绘制背景图像以适应屏幕分辨率

java - 显示黑色矩形的可绘制对象

android - 如何在 LinearLayout 上设置最大宽度,使其不会在横向模式下拉伸(stretch)?

具有灵活高度的ListView中的Android自定义行布局

android - 如何在 Activity 和 Widget 之间共享数据?