第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

向警報(bào)對(duì)話框添加圓角

向警報(bào)對(duì)話框添加圓角

www說 2023-05-10 17:35:11
我正在嘗試向 中添加圓角AlertDialog,但我不明白形狀文件的邏輯(不起作用)。我將它用作 的背景RelativeLayout,AlertDialog但它似乎被忽略了。這是形狀文件:<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android"    android:shape="rectangle">    <solid android:color="@android:color/transparent"/>    <corners android:radius="10dp" />    <padding android:left="10dp" android:right="10dp"/></shape>這是警報(bào)對(duì)話框 xml:<RelativeLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/dialog_rl"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:padding="10dp"    tools:context=".UserList"    android:background="@drawable/shape_dialog">    <TextView        android:id="@+id/dialog_titile"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:text="Scegli un'operazione"        android:textAlignment="center"        android:padding="5dp"        android:textColor="@android:color/black"        android:background="#D3D3D3"        android:textSize="26dp" />    <TextView        android:id="@+id/dialog_tv"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="Vuoi aprire o eliminare il test?"        android:textAlignment="center"        android:padding="15dp"        android:textSize="26dp"        android:layout_marginLeft="80dp"        android:background="@android:color/white"        android:textColor="@android:color/black"        android:layout_below="@id/dialog_titile" />    <Button        android:id="@+id/dialog_neutral_btn"        android:layout_width="80dp"        android:layout_height="wrap_content"        android:text="Indietro"        android:layout_below="@id/dialog_tv"        android:textColor="@android:color/black"        android:background="@drawable/button_bg_3" />這就是結(jié)果 我錯(cuò)過了什么?
查看完整描述

5 回答

?
慕無忌1623718

TA貢獻(xiàn)1744條經(jīng)驗(yàn) 獲得超4個(gè)贊

只需使用官方Material Components for Android 庫中包含的官方Material AlertDialog。

new?MaterialAlertDialogBuilder(context)
????????????.setTitle("Title")
????????????.setMessage("Message")
????????????.setPositiveButton("Ok",?null)
????????????.show();

并使用主題

<item?name="materialAlertDialogTheme">@style/ThemeOverlay.MaterialComponents.MaterialAlertDialog</item>

它遵循以下準(zhǔn)則:

http://img3.sycdn.imooc.com/645b65a40001621806530336.jpg

您可以使用屬性自定義組件的形狀shapeAppearanceOverlay。

就像是:

<!-- Alert Dialog -->

? <style name="MyThemeOverlayAlertDialog" parent="@style/ThemeOverlay.MaterialComponents.MaterialAlertDialog">

? ? <item name="shapeAppearanceOverlay">@style/ShapeAppearanceOverlay.MyApp.Dialog.Rounded</item>

? </style>


? <style name="ShapeAppearanceOverlay.MyApp.Dialog.Rounded" parent="">

? ? <item name="cornerFamily">rounded</item>

? ? <item name="cornerSize">8dp</item>

? </style>


查看完整回答
反對(duì) 回復(fù) 2023-05-10
?
陪伴而非守候

TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超8個(gè)贊

我已經(jīng)檢查了你的形狀,它在我的手機(jī)上看起來不錯(cuò),我有這個(gè)形狀以同樣的方式工作 + 有漸變:

<shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle">
<gradient
    android:angle="-90"
    android:centerColor="#F2F2F2"
    android:endColor="#ADA996"
    android:startColor="#DBDBDB" />
<stroke
    android:width="2dp"
    android:color="#000000" />
<corners android:radius="8dp" />

<padding
    android:bottom="4dp"
    android:left="4dp"
    android:right="4dp"
    android:top="4dp" />
</shape>
  • 嘗試使用上面的形狀,如果它無論如何都不起作用,請(qǐng)嘗試在單個(gè)按鈕上使用您的形狀 - 如果您看到您的形狀正常工作,您就會(huì)知道您的問題來自您的布局文件。

  • 也許您需要做的就是Invalidate Caches/Restart,您可能沒有錯(cuò)誤,但您的應(yīng)用程序正在使用來自緩存的舊形狀


查看完整回答
反對(duì) 回復(fù) 2023-05-10
?
SMILET

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個(gè)贊

您可以通過執(zhí)行以下步驟來實(shí)現(xiàn)。


您必須為 Textview 和主布局創(chuàng)建兩個(gè)可繪制形狀的 xml


1. border_no_white_bg.xml


<?xml version="1.0" encoding="utf-8"?>

<shape xmlns:android="http://schemas.android.com/apk/res/android">

<solid android:color="@color/white" />

<stroke

    android:width="1dp"

    android:color="@color/white" />


  <corners android:radius="6dp" />

</shape>




2. shape_button_orange_bg_with_radius.xml


<?xml version="1.0" encoding="utf-8"?>

 <shape xmlns:android="http://schemas.android.com/apk/res/android">


<stroke

    android:width="1dp"

    android:color="@color/black" />

  <corners android:radius="15dp" />

</shape>


3. Now in main_popup.xml, replace by below code

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout

    android:layout_width="match_parent"

    android:layout_height="wrap_content"

    android:layout_centerInParent="true"

    android:layout_margin="15dp"

    android:background="@drawable/border_no_white_bg"

    android:orientation="vertical">



    <TextView

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_gravity="center_horizontal"

        android:layout_margin="10dp"

        android:background="#CCCCCC"

        android:baselineAligned="false"

        android:gravity="center"

        android:padding="10dp"

        android:text="Scegli un'operazione"

        android:textColor="#000"

        android:textSize="18sp" />


    <TextView

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_gravity="center_horizontal"

        android:layout_margin="10dp"

        android:baselineAligned="false"

        android:gravity="center"

        android:padding="10dp"

        android:text="Vuoi aprire o eliminare il test?"

        android:textColor="#000"

        android:textSize="18sp" />



    <RelativeLayout

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_marginBottom="15dp"

        android:orientation="horizontal">



        <Button

            android:layout_width="wrap_content"

            android:layout_height="40dp"

            android:layout_marginLeft="15dp"

            android:layout_marginRight="15dp"

            android:background="@drawable/shape_button_orange_bg_with_radius"

            android:text="Indietro"

            android:textColor="#000"

            android:textSize="14sp" />



        <LinearLayout

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:layout_alignParentRight="true"

            android:orientation="horizontal">


            <Button

                android:layout_width="wrap_content"

                android:layout_height="40dp"

                android:layout_marginLeft="5dp"

                android:layout_marginRight="5dp"

                android:background="@drawable/shape_button_orange_bg_with_radius"

                android:text="Apri"

                android:textColor="#000"

                android:textSize="14sp" />


            <Button

                android:layout_width="wrap_content"

                android:layout_height="40dp"

                android:layout_marginLeft="5dp"

                android:layout_marginRight="15dp"

                android:background="@drawable/shape_button_orange_bg_with_radius"

                android:text="Elimina"

                android:textColor="#000"

                android:textSize="14sp" />

        </LinearLayout>


    </RelativeLayout>



     </LinearLayout>


 </RelativeLayout>



4. popup_window_animation

   Inside res->values->style.xml, add this code




<style name="popup_window_animation">

    <item name="android:windowEnterAnimation">@anim/fade_in</item>

    <item name="android:windowExitAnimation">@anim/fade_out</item>

</style>

現(xiàn)在創(chuàng)建一個(gè)方法來調(diào)用這個(gè)布局


public void showPopup(View anchorView) {


    final View popupView = getLayoutInflater().inflate(R.layout.main_popup, null);


    RelativeLayout layout_close;

    // Declare your views here


    final PopupWindow popupWindow = new PopupWindow(popupView, ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);

    popupWindow.setAnimationStyle(R.style.popup_window_animation);


    layout_feedback_close = (RelativeLayout) popupView.findViewById(R.id.layout_feedback_close);

    // Here find view by ids


    layout_feedback_close.setOnClickListener(new View.OnClickListener() {

        @Override

        public void onClick(View v) {


        }

    });


    popupWindow.setFocusable(true);

    popupWindow.setBackgroundDrawable(new ColorDrawable());

    int location[] = new int[2];

    anchorView.getLocationOnScreen(location);

    popupWindow.showAtLocation(anchorView, Gravity.CENTER, location[0], location[1] + anchorView.getHeight());

     }


查看完整回答
反對(duì) 回復(fù) 2023-05-10
?
繁花不似錦

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊

你的 shape_dialog.xml 應(yīng)該是這樣的


<?xml version="1.0" encoding="utf-8"?>

 <shape xmlns:android="http://schemas.android.com/apk/res/android">

   <solid

     android:color="@color/white"/>

   <corners

      android:radius="30dp" />

   <padding

    android:left="10dp"

    android:top="10dp"

    android:right="10dp"

    android:bottom="10dp" />

</shape>

您需要將對(duì)話框的背景設(shè)置為透明狀。


dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));


查看完整回答
反對(duì) 回復(fù) 2023-05-10
?
子衿沉夜

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超3個(gè)贊

使用DialogClass 而不是AlertDialogBuilder.


代碼片段


showDialog()使用 Dialog 類而不是定義此方法AlertBuilder


public void showDialog() {


    final Dialog dialog = new Dialog(this);

    dialog.setContentView(R.layout.your_xml);


    Button dialog_neutral_btn = dialog.findViewById(R.id.dialog_neutral_btn);

    Button dialog_positive_btn = dialog.findViewById(R.id.dialog_positive_btn);

    Button dialog_negative_btn=dialog.findViewById(R.id.dialog_negative_btn);

    TextView dialog_titile = dialog.findViewById(R.id.dialog_titile);

    TextView dialog_tv = dialog.findViewById(R.id.dialog_tv);



   // do you stuff here , define click listeners


    dialog.show();

}

用法


 yourButton.setOnClickListener(new View.OnClickListener() {

        @Override

        public void onClick(View v) {

           showDialog();

        }

    });

筆記:-


android.support.v7.app.AlertDialog

代替


android.app.AlertDialog

如果您想使用 AlertDialogBuilder


查看完整回答
反對(duì) 回復(fù) 2023-05-10
  • 5 回答
  • 0 關(guān)注
  • 301 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)