1. 程式人生 > 程式設計 >Android實現圓角彈框功能

Android實現圓角彈框功能

自定義彈窗類——Android 透明圓角彈窗

import android.content.Context;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.view.Window;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AlertDialog;

public class MySetDailog extends AlertDialog {
  TextView tvmydailog01;
  TextView tvmydailog02;
  ImageView ivdailog;
  public MySetDailog(@NonNull Context context ) {
    super(context);
    setCanceledOnTouchOutside(true);//點選其他區域時  true 關閉彈窗 false 不關閉彈窗
    tvmydailog01 = findViewById(R.id.tv_mydailog01);
    tvmydailog02 = findViewById(R.id.tv_mydailog02);
    ivdailog = findViewById(R.id.iv_mydailog);
  }

  /*設定圖片介面*/
  public void setImageResource(int resId){
    ivdailog.setImageResource(resId);
  }

  /*設定文字介面*/
  public void setText01(String str){
    tvmydailog01.setText(str);
  }
  public void setText02(String str){
    tvmydailog02.setText(str);
  }
  /*設定文字顏色介面*/
  public void setColor01(int color01){
    tvmydailog01.setTextColor(color01);
  }
  public void setColor02(int color02){
    tvmydailog02.setTextColor(color02);
  }

  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.dialog_mydailog);//載入佈局
    //設定透明背景
    Window window = getWindow();
    window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

  }
}

xml圖片預覽

xml佈局檔案

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/dialog_view"
  android:layout_width="325dp"
  android:layout_height="162dp"
  android:paddingTop="15dp"
  android:orientation="vertical"
  android:layout_gravity="center_horizontal"
  android:gravity="center"
  android:background="@drawable/bg_round_dailog">



    <ImageView
      android:id="@+id/iv_mydailog"
      android:layout_width="wrap_content"
      android:layout_height="66dp"
      android:src="@drawable/icon_warning" />

    <TextView
      android:id="@+id/tv_mydailog01"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_marginTop="@dimen/dp_12"
      android:maxLines="1"
      android:text="@string/str_upload_fail"
      android:textColor="#BB340F"
      android:textStyle="bold"
      android:textSize="18sp" />

    <TextView
      android:id="@+id/tv_mydailog02"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="@string/str_push_true_phone"
      android:textColor="#ff555555"
      android:textSize="15sp"
      />

</LinearLayout>

呼叫

 MySetDailog mySetDailog = new MySetDailog(BindActivity.this);
        mySetDailog.show();

到此這篇關於Android實現圓角彈框功能的文章就介紹到這了,更多相關android圓角彈框內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!