Android 中PopupWindow使用


Android 中PopupWindow使用。

PopupWindow會阻塞對話框,要在外部線程 或者 PopupWindow本身做退出才行。

mypopWindow.xml的Layout設計如下。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#259"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Here is Pop Window" />

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="OK" />

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Cancle" />

</LinearLayout>

 MainActivity.java文件。

 在MainActivity的Button按鈕單擊,然后顯示PopupWindow。

private void showPopWindow(Context context, View parent)
	{		
		LayoutInflater inflater = (LayoutInflater)     		    
				context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);     
		final View vPopWindow=inflater.inflate(R.layout.mypopwindow, null, false);  
		//寬300 高300		       
		final PopupWindow popWindow = new PopupWindow(vPopWindow,300,300,true);
		Button okButton = (Button)vPopWindow.findViewById(R.id.button1);
		okButton.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				Toast.makeText(MainActivity.this, "You click OK", Toast.LENGTH_SHORT).show();
			}
		});
		
		Button cancleButton = (Button)vPopWindow.findViewById(R.id.button2);
		cancleButton.setOnClickListener(new View.OnClickListener() {
			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				popWindow.dismiss(); //Close the Pop Window
			}
		});
		
		popWindow.showAtLocation(parent, Gravity.CENTER, 0, 0);
		
		
	}

 效果圖如下:最后顯示是劇中的,這里我只是截取了部分圖片。

單擊Ok按鈕顯示You click OK信息。單擊取消,則關閉PopupWindow.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM