我想知道如何在Dialog中消除(或更改颜色)titleDivider。它是在honeycomb +设备上显示的对话框标题下方的蓝线。
我想这与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>
我试图覆盖dialogTitleDecorLayout,这仅是我的theme.xml中对dialog_title_holo.xml的引用,但没有成功。错误是:
最佳答案
谢谢,除了我,我得到了解决方案,可以引用下面的代码来更改alertdialog的titledivider的颜色。希望这对某人有帮助。
int divierId = dialog.getContext().getResources()
.getIdentifier("android:id/titleDivider", null, null);
View divider = dialog.findViewById(divierId);
divider.setBackgroundColor(getResources().getColor(R.color.creamcolor));