xml文件
1.main.xml
<?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="@android:color/white"    android:orientation="horizontal"    >    <LinearLayout        android:id="@+id/title_layout"        android:layout_width="fill_parent"        android:layout_height="wrap_content"        android:layout_centerVertical="true"        android:background="@drawable/bg"         android:gravity="center">        <TextView            android:id="@+id/title"            android:text="@string/str_title"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:singleLine="true"            android:textSize="@dimen/size_title"             android:textColor="@android:color/white"/>        <ImageView            android:id="@+id/arrow"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:layout_gravity="center"            android:layout_marginLeft="5dip"            android:background="@drawable/icon_arrow_down"       />    </LinearLayout></LinearLayout>

2.pop.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:gravity="center"    android:layout_width="fill_parent"    android:layout_height="fill_parent"><!--   <ListViewandroid:id="@+id/pop_list"    android:layout_width="fill_parent"     android:layout_height="wrap_content"android:dividerHeight="2dip" android:cacheColorHint="#00000000"    ></ListView>  -->   <TextView       android:layout_width="fill_parent"     android:layout_height="wrap_content"    android:textColor="#000000"    android:text="城市:"      />  <EditText       android:layout_width="fill_parent"     android:layout_height="wrap_content"    android:lines="1"      />   <TextView       android:layout_width="fill_parent"     android:layout_height="wrap_content"    android:textColor="#000000"    android:text="地点:"      />  <EditText       android:layout_width="fill_parent"     android:layout_height="wrap_content"    android:lines="1"      />  <Button       android:layout_width="wrap_content"     android:layout_height="wrap_content"    android:text=" 确 定 "      />  </LinearLayout>

3.(activity)PopwindowActivity.java
import java.util.ArrayList;import java.util.HashMap;import java.util.Map;import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.view.Gravity;import android.view.LayoutInflater;import android.view.View;import android.view.View.OnClickListener;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ImageView;import android.widget.LinearLayout;import android.widget.ListView;import android.widget.PopupWindow;import android.widget.PopupWindow.OnDismissListener;import android.widget.SimpleAdapter;import android.widget.Toast;public class PopwindowActivity extends Activity{private ImageView arrow;private boolean isOpenPop = false;private PopupWindow window;private ListView list;private LinearLayout title_layout;public static final String KEY = "key";ArrayList<Map<String, Object>> items = new ArrayList<Map<String, Object>>();Context mContext;@Overrideprotected void onCreate(Bundle savedInstanceState){// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.main);mContext = this;arrow = (ImageView) findViewById(R.id.arrow);title_layout = (LinearLayout) findViewById(R.id.title_layout);title_layout.setOnClickListener(new OnClickListener(){@Overridepublic void onClick(View v){// TODO Auto-generated method stubchangPopState(v);}});}/** * 更改Pop状态 * */public void changPopState(View v){isOpenPop = !isOpenPop;if (isOpenPop){arrow.setBackgroundResource(R.drawable.icon_arrow_up);popAwindow(v);} else{arrow.setBackgroundResource(R.drawable.icon_arrow_down);if (window != null){window.dismiss();}}}private void popAwindow(View parent){if (window == null){LayoutInflater lay = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);View v = lay.inflate(R.layout.pop, null);window = new PopupWindow(v, 260, 300);int x = (int) getResources().getDimension(R.dimen.pop_x);int y = (int) getResources().getDimension(R.dimen.pop_y);window = new PopupWindow(v, x, y);}window.setBackgroundDrawable(getResources().getDrawable(R.drawable.pop_bg));window.setFocusable(true);window.setOutsideTouchable(false);window.setOnDismissListener(new OnDismissListener(){@Overridepublic void onDismiss(){// TODO Auto-generated method stubisOpenPop = false;arrow.setBackgroundResource(R.drawable.icon_arrow_down);}});window.update();window.showAtLocation(parent, Gravity.CENTER_HORIZONTAL | Gravity.TOP,0, (int) getResources().getDimension(R.dimen.pop_layout_y));}}

更多相关文章

  1. android 设置textview边框以及点击效果
  2. Android(安卓)手机bluetooth 名字的设置
  3. android 获取 imei号码
  4. android8.0屏蔽状态栏下拉
  5. android 获取 imei号码
  6. Android中获取IMEI码
  7. 详解 Android(安卓)的 Activity 组件
  8. Android(安卓)Power Management
  9. android 量产软件改动信息(持续更新)

随机推荐

  1. Android属性动画Property Animation系列
  2. Android(安卓)使用ActivityOptions实现Ac
  3. Android模拟器无法保存数据
  4. Activity被系统重启
  5. 【Android】android:padding属性设置对Im
  6. 关于android中的EditView,TextView的图片
  7. android 背景图片设置
  8. Android(安卓)Studio生成javadoc出错的解
  9. Android(安卓)在从全屏切换到非全屏的时
  10. Android(安卓)Studio 配置 OpenCV for An