我有一个包含ListView的AppCompatActivity,我将其显示为对话框(即要求用户拍照或从图库中选择图像的列表)。
但是它说我必须使用for (int i = 0; i < month.length; i++)
{
Console.WriteLine(month[i]+ "\t" + 1_AF[i] + "\t" + 1_Rain[i] + "\t" + 1_Sun[i] + "\t" + 1_TBig[i] + "\t" + 1_TSmall[i]);
}
作为对话。所以我用
Theme.AppCompat
然而,与标准DialogFragments等中出现的蓝色文本/蓝色下划线相比,生成的标题为黑色并且没有下划线。
如何将相同的主题反馈回此Dialog主题?
使用屏幕摘要编辑:
我通过执行以下操作从另一个DialogFragment调用此新对话框:
<style name="CameraMenuTheme" parent="Theme.AppCompat.Light.Dialog">
</style>
答案 0 :(得分:0)
试试这个。
创建一个没有给出样式的对话框:
public static void showDialog(Activity activity) {
final AlertDialog.Builder builder = new AlertDialog.Builder(activity);
View view = LayoutInflater.from(activity).inflate(R.layout.dialog_common, null);
builder.setView(view);
alert = builder.create();
alert.show();
}
答案 1 :(得分:0)
以下是对话框的示例主题,其中colorAccent将用于您的按钮,textColorPrimary将是您的标题颜色,背景是您的对话框背景。
<style name="AlertDialogStyle" parent="Theme.AppCompat.Light.Dialog.Alert">
<item name="colorAccent">#0900FF</item>
<item name="android:textColorPrimary">#FFFFFF</item>
<item name="android:background">#FF0049</item>
</style>
现在将此主题添加到您的应用程序AppTheme
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- your AlertDialog style -->
<item name="alertDialogTheme">@style/AlertDialogStyle</item>
</style>
现在创建对话框。这里aa是您在Arrayview中用作适配器的ArrayAdapter或BaseAdapter。
import android.support.v7.app.AlertDialog
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity().this);
builder.setTitle("Dialog");
builder.setSingleChoiceItems(aa, 0, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dlg, int which) {
//which is index of your item clicked from the list. So take appropriate action.
}
})
builder.show();