对话框片段自定义正文复选框

时间:2015-08-24 16:59:52

标签: java android android-layout android-alertdialog android-dialog

我需要一个自定义对话框,非常类似于授权USB DEBUG所示的对话框。我在API LEVEL 15及以上版本。 DEBUG AUTH DIALOG 基本上我需要在自定义视图中放置一个带有文本的复选框。我试过了:

LayoutInflater inflater = getActivity().getLayoutInflater();
builder.setView(inflater.inflate(R.layout.my_dialog, (ViewGroup) getActivity().findViewById(R.id.root_of_my_dialog)));

我的自定义视图是:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/root_of_my_dialog"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <!-- Here I'll have the checkbox -->
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Test"
        android:textColor="@color/red" />

</LinearLayout>

这样我的自定义布局没有得到正确的边距/填充(单词测试就在最左边)......就像没有任何风格一样。我如何从标准/默认继承?

2 个答案:

答案 0 :(得分:0)

已经回答了创建对话框。阅读以下链接:

  1. create-a-custom-dialog-box-in-android

  2. create-modal-dialog-box-in-android

  3. 希望这有帮助。

答案 1 :(得分:0)

试试这个:

if($f -match "^(?<num>[\d]+)_${base_ver}_(?<month>[\d]{2})(?<year>[\d]{2})\.zip$"){
    $pfile = $f
    $pnum = $Matches["num"]
    $pmon = $Matches["month"]
    $pyear = $Matches["year"]
}

添加AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); // Get the layout inflater LayoutInflater inflater = getActivity().getLayoutInflater(); View v = inflater.inflate(R.layout.my_dialog, null); builder.setView(v) // Add action buttons .setPositiveButton(R.string.ok, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int id) { // OK } }) .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { //cancel } }); Dialog dialog = builder.create(); dialog.show();

padding