android - 对话框中的样式titleDivider

标签 android dialog divider

我想知道如何在对话框中摆脱(或更改颜色)titleDivider。它是蜂窝+设备上显示的对话框标题下方的蓝线。

Annoying titleDivider line

我猜这是来自 SDK 的相关布局,但由于没有样式属性,我不知道如何设置它的样式。如果我尝试使用 findViewById 则没有 android.R.id.titleDivider

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:fitsSystemWindows="true">
    <TextView android:id="@android:id/title" style="?android:attr/windowTitleStyle"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:minHeight="@android:dimen/alert_dialog_title_height"
        android:paddingLeft="16dip"
        android:paddingRight="16dip"
        android:gravity="center_vertical|left" />
    <View android:id="@+id/titleDivider"
            android:layout_width="match_parent"
            android:layout_height="2dip"
            android:background="@android:color/holo_blue_light" />
    <FrameLayout
        android:layout_width="match_parent" android:layout_height="wrap_content"
        android:layout_weight="1"
        android:orientation="vertical"
        android:foreground="?android:attr/windowContentOverlay">
        <FrameLayout android:id="@android:id/content"
            android:layout_width="match_parent"
            android:layout_height="match_parent" />
    </FrameLayout>
</LinearLayout>

我试图覆盖在我的 theme.xml 中仅引用 dialog_title_holo.xml 的 dialogTitleDecorLayout,但没有成功。错误是:

error: Error: No resource found that matches the given name: attr 'dialogTitleDecorLayout'.

最佳答案

获取对 AlertDialogtitleDivider 的引用以更改其颜色:

int divierId = dialog.getContext().getResources()
                .getIdentifier("android:id/titleDivider", null, null);
View divider = dialog.findViewById(divierId);
divider.setBackgroundColor(getResources().getColor(R.color.creamcolor));

关于android - 对话框中的样式titleDivider,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10978692/

相关文章:

android - 如何在 Smack 4.1 中的 XMPP 消息标签中添加自定义属性(昵称)

dialog - 角度引导模态

linux - 如何使用对话框捕获用户选择

android - 在蜂窝前版本的水平 LinearLayout 上使用分隔线

android - Listview 分隔边距

html - CSS Inline-table 添加底部边距

java - 如何解决这个需求,Android条件序列化名称

java - Firebase 未将文件上传到存储桶

android - 如何设计比手机屏幕更大的布局?

qt - 如何在所有窗口的顶部显示 QMessageBox