popUPwindow

在程序里弹出一个小窗口,像系统的MediaController一样,具体做法:先在mail.xml的layout布局里加一个id,这个到后面会用到的,

1 <?xml version="1.0" encoding="utf-8"?>2  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"3     android:orientation="vertical"4     android:layout_width="fill_parent"5     android:layout_height="fill_parent"6     android:id="@+id/linear"<!--这个一定要加-->7     >接着布局文件里写一个control.xml文件,里面放一些要显示的widget,

1 <?xml version="1.0" encoding="utf-8"?> 2  <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3     android:orientation="vertical" 4     android:layout_width="fill_parent" 5     android:layout_height="fill_parent" 6     android:gravity="center" 7     android:background="#00000000" 8     > 9     <LinearLayout10         android:orientation="horizontal"11         android:layout_width="fill_parent"12         android:layout_height="wrap_content"13         android:gravity="center_horizontal"14         android:layout_marginTop="5dip"15         android:layout_marginBottom="5dip"16         >17         <ImageButton18         android:id="@+id/sounddown"19         android:layout_width="wrap_content"20         android:layout_height="wrap_content"21         android:src="@drawable/sounddown"22         />23         24         <TextView25         android:id="@+id/textNow"26         android:layout_width="wrap_content"27         android:layout_height="wrap_content"28         android:textSize="20sp"29         android:text="     "30         />31         <SeekBar32         android:id="@+id/seekbar"33         android:layout_width="500dip"34         android:layout_height="wrap_content"35         android:max="10000"36         />37         <TextView38         android:id="@+id/textAll"39         android:layout_width="wrap_content"40         android:layout_height="wrap_content"41         android:textSize="20sp"42         android:text="     "43         />44         <ImageButton45         android:id="@+id/soundup"46         android:layout_width="wrap_content"47         android:layout_height="wrap_content"48         android:src="@drawable/soundup"49         />50         </LinearLayout>51       <LinearLayout52       android:orientation="horizontal"53       android:layout_width="fill_parent"54       android:layout_height="wrap_content"55       android:gravity="center_horizontal"56       android:background="#0000003D" 57        >58        59        </LinearLayout>60     61     </LinearLayout>最后就是java文件,

 1 public class MainActivity extends Activity { 2     /** Called when the activity is first created. */ 3     private Button show; 4     public PopupWindow mPopupWindow; 5     private boolean boo=true; 6     @Override 7     public void onCreate(Bundle savedInstanceState) { 8         super.onCreate(savedInstanceState); 9         setContentView(R.layout.main);10         show = (Button) findViewById(R.id.button);11         show.setOnClickListener(new Button.OnClickListener(){12 13             @Override14             public void onClick(View v) {15                 // TODO Auto-generated method stub16                  if(boo){17                     boo=false;18                     check();19                     mPopupWindow.showAtLocation(findViewById(R.id.linear), Gravity.RIGHT|Gravity.BOTTOM, 0,0);20                 }else{21                     boo=true;22                     mPopupWindow.dismiss();23                 }24                 25             }});26     }27 28     private void check(){29         if(mPopupWindow==null){30             mPopupWindow=new PopupWindow(getLayoutInflater().inflate(R.layout.controler, null),LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT);31         }32         if(mPopupWindow.isShowing()){33             mPopupWindow.dismiss();34         }35     }36 }
如果要响应PopupWindow里的widget,可以用LayoutInflater过滤xml文件,再用View view=getLayoutInflater().inflate(resource, root);就可以了。

你可能感兴趣的:(xml)