如何在安卓系统中改变alertdialog的文本行?

问题描述 投票:0回答:1

有谁知道如何改变带有textinput的AlertDialog的textinput线和光标(所以从绿色变成粉红色)。1]: https:/i.stack.imgur.com1apfI.png。我在我的类中是这样实现的。


AlertDialog.Builder builder = new AlertDialog.Builder(this,R.style.AlertDialogTheme);
        builder.setTitle("Artikel Toevoegen");
        final EditText input = new EditText(this);
        input.setSingleLine();
        builder.setView(input);
        builder.setPositiveButton("Toevoegen", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                if(input.length() != 0) {
                    shoppingList.add((input.getText().toString()));
                    lv.setAdapter(adapter);
                }
                else {
                    Toast toast = Toast.makeText(getApplicationContext(),"Voer een artikel in", Toast.LENGTH_LONG);
                    toast.setGravity(Gravity.CENTER, 0, 570);
                    toast.show();
                    artikelToevoegen();
                }
            }
        });

        builder.setNegativeButton("Annuleer", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                dialog.cancel();
            }
        });
        AlertDialog dialog = builder.create();
        dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
        WindowManager.LayoutParams wmlp = dialog.getWindow().getAttributes();

        wmlp.gravity = Gravity.TOP | Gravity.LEFT;
        wmlp.x = 40;   //x position
        wmlp.y = 100;   //y position

        dialog.show();

这就是xml样式的样子。

<style name="AlertDialogTheme" parent="ThemeOverlay.AppCompat.Dialog.Alert">
        android:textCursorDrawable="@drawable/pink_cursor"
        android:backgroundTint="#D70F64"
        <item name="buttonBarNegativeButtonStyle">@style/NegativeButtonStyle</item>
        <item name="buttonBarPositiveButtonStyle">@style/PositiveButtonStyle</item>
    </style>

    <style name="NegativeButtonStyle" parent="Widget.AppCompat.Button.ButtonBar.AlertDialog">
        <item name="android:textColor">#d70f64</item>
    </style>

    <style name="PositiveButtonStyle" parent="Widget.AppCompat.Button.ButtonBar.AlertDialog">
        <item name="android:textColor">#d70f64</item>
    </style>

java android android-alertdialog textinput
1个回答
0
投票

你可以通过以下方式改变颜色

input.getBackground().setColorFilter(getResources().getColor(R.color.pink_cursor), PorterDuff.Mode.SRC_ATOP);

input.setBackgroundTintList(ColorStateList.valueOf(getResources().getColor(R.color.pink_cursor)));
© www.soinside.com 2019 - 2024. All rights reserved.