當前位置:首頁 » 安卓系統 » androiddialog透明

androiddialog透明

發布時間: 2022-07-01 23:47:30

⑴ 安卓開發怎樣把dialog的背景設置成透明的

按如下步驟操作即可: 1、自定義Dialog public class SelectDialog extends AlertDialog{ public SelectDialog(Context context, int theme) { super(context, theme); } public SelectDialog(Context context) { super(context); } @Override protected void onCreate(Bundle savedInstanceState) { super/apk/res/android" android:orientation="vertical" android:padding="10dp" android:layout_width="115dp" android:layout_height="wrap_content" android:background="@color/blue"> <Button android:layout_height="wrap_content" android:background="#00000000" android:layout_width="fill_parent" android:text="全部聯系人" android:paddingTop="5dp" android:paddingBottom="5dp" android:paddingLeft="10dp" android:gravity="leftcenter_vertical" android:id="@+id/btnSltCntAll"></Button> <Button android:layout_height="wrap_content" android:background="#00000000" style="@drawable/greenhand_button" android:text="咕咚用戶" android:gravity="leftcenter_vertical" android:paddingBottom="5dp" android:paddingTop="5dp" android:paddingLeft="10dp" android:paddingRight="10dp" android:layout_width="fill_parent" android:id="@+id/btnSltGudongUser"></Button> <Button style="@drawable/greenhand_button" android:background="#00000000" android:layout_height="wrap_content" android:layout_width="fill_parent" android:text="推薦用戶" android:gravity="leftcenter_vertical" android:paddingTop="5dp" android:paddingBottom="5dp" android:paddingLeft="10dp" android:id="@+id/btnSltRecommend"></Button> </LinearLayout> 3、顏色color.xml代碼 <?xml version="1.0" encoding="utf-8"?> <resources> <color name="transparent">#00000000</color> </resources> 4、樣式style.xml代碼 <?xml version="1.0" encoding="utf-8"?> <resources> <style name="dialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item><!--邊框--> <item name="android:windowIsFloating">true</item><!--是否浮現在activity之上--> <item name="android:windowIsTranslucent">false</item><!--半透明--> <item name="android:windowNoTitle">true</item><!--無標題--> <item name="android:windowBackground">@color/transparent</item><!--背景透明--> <item name="android:backgroundDimEnabled">false</item><!--模糊--> </style> </resources> 4、顯示Dialog SelectDialog selectDialog = new SelectDialog(this,R.style.dialog);//創建Dialog並設置樣式主題 Window win = selectDialog.getWindow(); LayoutParams params = new LayoutParams(); params.x = -80;//設置x坐標 params.y = -60;//設置y坐標 win.setAttributes(params); selectDialog.setCanceledOnTouchOutside(true);//設置點擊Dialog外部任意區域關閉Dialog selectDialog.show();

⑵ android 如何讓一個dialog的背景為透明

北京設置透明?你可以設置dialog的樣式,通過Style 來設置;
Android Dialog背景全透明無邊框 Theme Style
<style name="Translucent_NoTitle" parent="android:style/Theme.Dialog">
<item name="android:windowNoTitle">true</item>
<item name="android:background">#00000000</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:colorBackgroundCacheHint">@null</item>
<item name="android:windowIsTranslucent">true</item>
</style>

⑶ 如何使Android dialog彈出後當前的 activity背景不變暗

第一種是在樣式文件styles.xml中添加新的樣式,父樣式指向的是默認的Dialog樣式,修改如下,然後你的Dialog用你添加的樣式就可以了.

<resources>

<style name="DialogStyle" parent="@android:style/Theme.Dialog">

<!-- dialog背景樣式 -->

<item name="android:windowBackground"> @android:color/transparent </item>

<!-- 背景透明 -->

<item name="android:backgroundDimEnabled">false</item> </style>

</resources>

第二種是在代碼中修改.lp.alpha大小隨自己要求設置

// 設置屏幕背景變暗

private void setScreenBgDarken() {

WindowManager.LayoutParams lp = getWindow().getAttributes();

lp.alpha = 0.5f;

lp.dimAmount = 0.5f;

getWindow().setAttributes(lp);

}

// 設置屏幕背景變亮

private void setScreenBgLight() {

WindowManager.LayoutParams lp = getWindow().getAttributes();

lp.alpha = 1.0f;

lp.dimAmount = 1.0f;

getWindow().setAttributes(lp);

}

第三種是重寫在Activity中onCreateDialog()方法,這種我沒用過,你可以嘗試一下.

⑷ android 自定義dialog如何去掉半透明

AlertDialog.Builder builder = new AlertDialog.Builder(DialogActivity.this,AlertDialog.THEME_TRADITIONAL);//傳統主題

AlertDialog.Builder builder = new AlertDialog.Builder(DialogActivity.this,AlertDialog.THEME_HOLO_DARK);//使用深色背景 主題

AlertDialog.Builder builder = new AlertDialog.Builder(DialogActivity.this,AlertDialog.THEME_HOLO_LIGHT);//使用淺色背景 主題

AlertDialog.Builder builder = new AlertDialog.Builder(DialogActivity.this,AlertDialog.THEME_DEVICE_DEFAULT_DARK);//使用默認設備 深色主題

AlertDialog.Builder builder = new AlertDialog.Builder(DialogActivity.this,AlertDialog.THEME_DEVICE_DEFAULT_LIGHT);//使用默認設備 淺色主題

//自定義布局

View layout = getActivity().getLayoutInflater().inflate(R.layout.mydialog,null);
AlertDialog.Builder dialog = new AlertDialog.Builder(DialogActivity.this,AlertDialog.THEME_DEVICE_DEFAULT_DARK);
final AlertDialog dialog = builder.create();
dialog.setView(layout);
//透明
Window window = dialog.getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
lp.alpha = 0.9f;
window.setAttributes(lp);
。。。
dialog.show();

⑸ android 彈出dialog時activity的生命周期處在什麼狀態

處於pause狀態。

當 Activity失去焦點, 被一個新的非全屏的Activity 或者一個透明的Activity (如彈窗dialog)被放置在棧頂,此時的狀態叫做暫停狀態(Paused)。

此時它依然與窗口管理器保持連接,Activity依然保持活力(保持所有的狀態,成員信息,和窗口管理器保持連接),但是在系統內存極端低下的時候將被強行終止掉。所以仍然可見,但已經失去了焦點故不可與用戶進行交互。

(5)androiddialog透明擴展閱讀:

activity的其它狀態:

1、運行:如果當前的activity在前台界面上時(堆棧頂端)。

2、停止:如果activity完全被另一個全屏活動遮擋住時,它將會停止。該活動也仍保留全部的狀態和成員信息,但將會被隱藏起來不再展示給用戶,並且當內存在其他地方被需要時該活動就將會被系統殺死。

3、重啟:如果activity處於暫停或者停止狀態,系統將會在內存中終止該活動無論是結束活動或者殺死進程。當它再一次展示給用戶時,它必須是完全重啟並且恢復到之前的狀態。

⑹ android 怎樣設置dialog的背景

[html]viewplainprint?
<itemname="android:windowFrame">@null</item>

⑺ android透明區域點擊穿透怎麼實現

你可以獲取對話框的點擊事件,比如點擊了確定然後你就跳轉 AlertDialog.Builder builder = new Builder(CommentActivity.this); builder.setMessage("確定要跳轉嗎?"); builder.setTitle("提示"); builder.setPositiveButton("確認", new android.content.DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { // TODO Auto-generated method stub arg0.dismiss(); 這里跳轉到你想要去的頁面 } }); builder.setNegativeButton("取消", new android.content.DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.create().show(); arg0就是該listener的介面啊,通過這個參數就可以關閉對話框。 跳到想去的頁面就startIntent就好了,你把那一行中文換成 Intent it = new Intent(this,UserActivity.class); startActivity(it); 當然要跳去哪個頁面就你自己決定 AlertDialog.Builder builder = new Builder(CommentActivity.this); builder.setMessage("確定要跳轉嗎?"); builder.setTitle("提示"); builder.setPositiveButton("確認", new android.content.DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface arg0, int arg1) { // TODO Auto-generated method stub arg0.dismiss(); Intent it = new Intent(this,UserActivity.class); startActivity(it); } }); builder.setNegativeButton("取消", new android.content.DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); builder.create().show();

⑻ android dialogfragment的布局文件為什麼不能設置為透明

所以讀通過 Google API 指南我碰到如何載入警報對話框中的自定義版式這里。
我寫了這樣的 DialogFragment 類擴展的類:
String proct;
String description;
String company;
public void getAdInfo(String p, String d, String c)
{
proct = p;
description = d;
company = c;
}
public Dialog onCreateDialog(Bundle savedInstanceState) {
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
LayoutInflater inflater = getActivity().getLayoutInflater();
builder.setView(inflater.inflate(R.layout.ad_dialog, null));
TextView pt = (TextView) getView().findViewById(R.id.proct);
pt.setText(proct);
TextView dt = (TextView) getView().findViewById(R.id.description);
dt.setText(description);
TextView ct = (TextView)getView().findViewById(R.id.company);
ct.setText(company);
builder.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// do something
}
});
builder.setNegativeButton("Exit", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dismiss();
}
});
return builder.create();
}

⑼ android設置dialog在第幾層顯示

android中dialog都是彈出的對話框,沒有第幾層這個概念,只有dialog有級別。
具體實現代碼:
1.創建對象框
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("請輸入"); //設置對話框標題
builder.setIcon(android.R.drawable.btn_star); //設置對話框標題前的圖標

2.創建EditText輸入框
final EditText edit = new EditText(context);

3.將輸入框賦值給Dialog,並增加確定取消按鍵
builder.setView(edit);
builder.setPositiveButton("確認", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你輸入的是: " + edit.getText().toString(), Toast.LENGTH_SHORT).show();
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你點了取消", Toast.LENGTH_SHORT).show();
}
});

4.設置常用api,並show彈出
builder.setCancelable(true); //設置按鈕是否可以按返回鍵取消,false則不可以取消
AlertDialog dialog = builder.create(); //創建對話框
dialog.setCanceledOnTouchOutside(true); //設置彈出框失去焦點是否隱藏,即點擊屏蔽其它地方是否隱藏
dialog.show();

熱點內容
scratch少兒編程課程 發布:2025-04-16 17:11:44 瀏覽:639
榮耀x10從哪裡設置密碼 發布:2025-04-16 17:11:43 瀏覽:368
java從入門到精通視頻 發布:2025-04-16 17:11:43 瀏覽:84
php微信介面教程 發布:2025-04-16 17:07:30 瀏覽:310
android實現陰影 發布:2025-04-16 16:50:08 瀏覽:793
粉筆直播課緩存 發布:2025-04-16 16:31:21 瀏覽:344
機頂盒都有什麼配置 發布:2025-04-16 16:24:37 瀏覽:213
編寫手游反編譯都需要學習什麼 發布:2025-04-16 16:19:36 瀏覽:812
proteus編譯文件位置 發布:2025-04-16 16:18:44 瀏覽:366
土壓縮的本質 發布:2025-04-16 16:13:21 瀏覽:593