android自定義的對話框
① android自定義對話框 怎麼設置關閉
在Dialog裡面有個dimiss()方法直接用你自定義的對話框的對象調用就好了!
java">@Override
publicvoidonClick(Viewv){
switch(v.getId()){
caseR.id.tvCancle:
dismiss();
break;
}
}
② android怎樣自定義對話框給個源碼參考參考~
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.function_music);
// 實例化新的窗口
Window w = getWindow();
// 獲取默認顯示數據
Display display = w.getWindowManager().getDefaultDisplay();
// 獲取窗口的背景圖片
Resources resources = musicActivity.getResources();
Drawable drawable = resources.getDrawable(R.drawable.operate_bg);
// 設置窗口的背景圖片
w.setBackgroundDrawable(drawable);
// 窗口的標題為空
w.setTitle(null);
// 定義窗口的寬和高
int width = (int) (display.getWidth() * 0.8);
int height = (int) (display.getHeight() * 0.5);
// 設置窗口的大小
w.setLayout(width, height);
// 設置窗口的顯示位置
w.setGravity(Gravity.CENTER);
// 設置窗口的屬性
WindowManager.LayoutParams wl = w.getAttributes();
w.setAttributes(wl);
// 獲取控制項
findView();
}
參考資料:Android自定義控制項與自定義動畫實戰精講視頻課程【張科勇】
③ android 如何自定義對話框大小
WindowManagerm=getWindowManager();
Displayd=m.getDefaultDisplay();//為獲取屏幕寬、高
LayoutParamsp=getWindow().getAttributes();//獲取對話框當前的參數值
p.height=(int)(d.getHeight()*0.6);//高度設置為屏幕的0.6
p.width=(int)(d.getWidth()*0.95);//寬度設置為屏幕的0.95
getWindow().setAttributes(p);//設置生效
④ android 自定義對話框怎麼關閉
1、在Dialog裡面有個dimiss()方法直接用你自定義的對話框的對象調用就好了!
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.tvCancle:
dismiss();
break;
}
}
2、用反射把view取出來,然後用view的findViewbyid找到button,注冊事件就好了
⑤ android自定義的對話框怎麼調用
Android自定義對話框的思路就是編寫對話框的布局文件xml,然後在對話框中顯示不同的控制項。以下以顯示文本控制項為例(ImageView等都可以顯示)。
1.布局文件connect_dlg.xml(比如http://www.tiecou.com/)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:background="#ffffffff"
android:orientation="vertical"
android:id="@+id/llToast" >
<TextView
android:layout_height="wrap_content"
android:layout_margin="1dip"
android:textColor="#ffffffff"
android:layout_width="fill_parent"
android:gravity="center"
android:textSize="16sp"
android:background="#FF129de2"
android:id="@+id/tvTitleToast" />
<LinearLayout
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/llToastContent"
android:layout_marginLeft="1dip"
android:layout_marginRight="1dip"
android:layout_marginBottom="1dip"
android:layout_width="wrap_content"
android:padding="15dip"
android:background="#FFFFFFFF" >
<TextView
android:layout_height="wrap_content"
android:paddingRight="10dip"
android:paddingLeft="10dip"
android:layout_width="wrap_content"
android:gravity="center"
android:textSize="16sp"
android:textColor="#FFff6699"
android:id="@+id/tvTextToast" />
</LinearLayout>
<LinearLayout
android:id="@+id/MyLayout_ad2"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="40sp">
<com.tencent.exmobwin.banner.TAdView
android:id="@+id/adview2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="top|right" >
</com.tencent.exmobwin.banner.TAdView>
</LinearLayout>
</LinearLayout>
2.編寫顯示對話框函數。ShowConnectDialog(String textString)
private void ShowConnectDialog(String textString) {
LinearLayout loginLayout1 = (LinearLayout) getLayoutInflater().inflate(
R.layout.connect_dlg, null);
// adView.
TextView title = (TextView) loginLayout1
.findViewById(R.id.tvTitleToast);
title.setText("系統提示");
TextView text1 = (TextView) loginLayout1.findViewById(R.id.tvTextToast);
text1.setText(textString);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(loginLayout1);
builder.setPositiveButton("下載MobCtrl伺服器?", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//處理確定按鈕
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 處理取消按鈕
finish();
}
});
builder.create().show();
}
3.顯示對話框。在需要顯示的地方調用即可。
ShowConnectDialog("連接超時,請檢查伺服器是否開啟及IP地址是否輸入正確。確保電腦和手機連接在同一個網路內。");
⑥ android中怎麼設置一個日期的自定義對話框
在用戶點擊輸入框或者輸入框獲得焦點的時候彈出來DatePickerDialog,用戶點擊設定按鈕,將日期填寫到輸入框。
下面直接上代碼:
[html] view plain print?
<EditText
android:id="@+id/Birthday"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="30dip"
android:layout_marginRight="30dip"
android:inputType="none"//不顯示系統輸入鍵盤
android:layout_weight="1" >
</EditText>
[java] view plain print?
birthday = (EditText)findViewById(R.id.Birthday);
birthday.setInputType(InputType.TYPE_NULL); <span style="font-family: Arial, Helvetica, sans-serif;">//不顯示系統輸入鍵盤</span>
birthday.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
if(hasFocus){
Calendar c = Calendar.getInstance();
new DatePickerDialog(ProfileActivity.this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
// TODO Auto-generated method stub
birthday.setText(year+"/"+(monthOfYear+1)+"/"+dayOfMonth);
}
}, c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DAY_OF_MONTH)).show();
}
}
});
birthday.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Calendar c = Calendar.getInstance();
new DatePickerDialog(ProfileActivity.this, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
// TODO Auto-generated method stub
birthday.setText(year+"/"+(monthOfYear+1)+"/"+dayOfMonth);
}
}, c.get(Calendar.YEAR), c.get(Calendar.MONTH), c.get(Calendar.DAY_OF_MONTH)).show();
}
});
⑦ android自定義對話框怎麼實現
實現機制
1.先自定義一個彈出框的樣式
2.自己實現CustomDialog類,繼承自Dialog,實現裡面方法,在裡面載入自定義樣式的彈出框;
3.使用時,與使用Dialog一樣
⑧ android開發中怎麼自定義一個復選對話框
1.首先在drawable文件夾中添加drawable文件checkbox_style.xml。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/checkbox_pressed" android:state_checked="true"/>
<item android:drawable="@drawable/checkbox_normal" android:state_checked="false"/>
<item android:drawable="@drawable/checkbox_normal"/>
</selector>
2.在values文件夾下的styles.xml文件中添加CustomCheckboxTheme樣式。
<style name="CustomCheckboxTheme" parent="@android:style/Widget.CompoundButton.CheckBox">
<item name="android:button">@drawable/checkbox_style</item>
</style>
3.在布局文件中使用CustomCheckboxTheme樣式。
<CheckBox
android:id="@+id/select_all"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="@style/CustomCheckboxTheme" />
使用到的圖片資源
checkbox_normal.png
checkbox_pressed.png
⑨ 如何自定義ios多選對話框 android
Android自定義對話框的思路就是編寫對話框的布局文件xml,然後在對話框中顯示不同的控制項。以下以顯示文本控制項為例(ImageView等都可以顯示)。
1.布局文件connect_dlg.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:background="#ffffffff"
android:orientation="vertical"
android:id="@+id/llToast" >
<TextView
android:layout_height="wrap_content"
android:layout_margin="1dip"
android:textColor="#ffffffff"
android:layout_width="fill_parent"
android:gravity="center"
android:textSize="16sp"
android:background="#FF129de2"
android:id="@+id/tvTitleToast" />
<LinearLayout
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/llToastContent"
android:layout_marginLeft="1dip"
android:layout_marginRight="1dip"
android:layout_marginBottom="1dip"
android:layout_width="wrap_content"
android:padding="15dip"
android:background="#FFFFFFFF" >
<TextView
android:layout_height="wrap_content"
android:paddingRight="10dip"
android:paddingLeft="10dip"
android:layout_width="wrap_content"
android:gravity="center"
android:textSize="16sp"
android:textColor="#FFff6699"
android:id="@+id/tvTextToast" />
</LinearLayout>
<LinearLayout
android:id="@+id/MyLayout_ad2"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="40sp">
<com.tencent.exmobwin.banner.TAdView
android:id="@+id/adview2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="top|right" >
</com.tencent.exmobwin.banner.TAdView>
</LinearLayout>
</LinearLayout>
2.編寫顯示對話框函數。ShowConnectDialog(String textString)
private void ShowConnectDialog(String textString) {
LinearLayout loginLayout1 = (LinearLayout) getLayoutInflater().inflate(
R.layout.connect_dlg, null);
// adView.
TextView title = (TextView) loginLayout1
.findViewById(R.id.tvTitleToast);
title.setText("系統提示");
TextView text1 = (TextView) loginLayout1.findViewById(R.id.tvTextToast);
text1.setText(textString);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(loginLayout1);
builder.setPositiveButton("下載MobCtrl伺服器?", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//處理確定按鈕
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 處理取消按鈕
finish();
}
});
builder.create().show();
}
3.顯示對話框。在需要顯示的地方調用即可。
ShowConnectDialog("連接超時,請檢查伺服器是否開啟及IP地址是否輸入正確。確保電腦和手機連接在同一個網路內。");
⑩ android怎麼實現自定義對話框的背景
1. 在res/values下創建兩個xml文件,一個為主體風格資源styles.xml一個為顏色資源colors.xml
styles.xml :
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name = "translucent" parent = "@android:style/Theme.Dialog">
<item name = "android:windowBackground">@color/translucent_background</item>
<item name = "android:windowIsTranslucent">true</item>
<item name = "android:windowNoTitle">true</item>
<item name ="android:windowAnimationStyle">@android:style/Animation.Translucent</item>
</style>
</resources>
colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name = "translucent_background">#00000000</color>
</resources>
2. 在AndroidManifest.xml為Activity指定自定義的主題
<activity android:name = 「.right」 android:theme = 「@style/translucent」 />
3. 在顯示圖片的activity布局文件中加入圖片資源(設置layout的背景或者增加一個ImageView顯示圖片)
4.在Activity java文件right.java中關聯布局文件,然後運行Android工程到此activity.