package add.android;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.widget.AdapterView;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.PopupWindow;
import android.widget.SimpleAdapter;
import android.widget.AdapterView.OnItemClickListener;import com.mas.R;public class popupTest extends Activity {
ImageButton btnPopupWindow;
public PopupWindow pop;
ListView listView,listView1;
LayoutInflater inflater;
SimpleAdapter adapter;
EditText et;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
et = (EditText)findViewById(R.id.et);
btnPopupWindow = (ImageButton)findViewById(R.id.imgbutton1);
btnPopupWindow.setOnClickListener(new ClickEvent());
}
//统一处理按键事件
public class ClickEvent implements OnClickListener{
@Override
public void onClick(View v){
// TODO Auto-generated method stub
doSth(v);
}
public void doSth(View v){
if(v==btnPopupWindow)
{
LayoutInflater inflater = (LayoutInflater)
popupTest.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
listView = (ListView) inflater.inflate(R.layout.listview, null);
if(pop == null){
adapter = new SimpleAdapter(popupTest.this, getData(), R.layout.item,
new String[]{"img","info"}, new int[]{R.id.img,R.id.info});
listView.setFocusable(true);
listView.setItemsCanFocus(true);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
// TODO Auto-generated method stub
if(arg2==0){
Intent mIntent = new Intent();
mIntent.setClass(popupTest.this, tt.class);
startActivity(mIntent);
}
else if(arg2==1)
{
finish();
}
pop.dismiss();
pop = null;
}
});
pop = new PopupWindow(listView,150,LayoutParams.WRAP_CONTENT);
pop.setBackgroundDrawable(getResources().getDrawable(R.layout.rounded_corners_pop));
pop.setTouchable(true);
pop.setFocusable(true);
pop.showAsDropDown(btnPopupWindow,1,15);
}else{
pop.dismiss();
pop = null;
}
}
}
public List<Map<String, Object>> getData() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();
map.put("img", R.drawable.header);
map.put("info", "切换用户");
list.add(map);
map = new HashMap<String, Object>();
map.put("img", R.drawable.delete);
map.put("info", "退出程序");
list.add(map);
return list;
}
}
}
这段程序怎么在xml中写啊?哪位大哥大姐帮忙写一下。谢谢了
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup.LayoutParams;
import android.widget.AdapterView;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.PopupWindow;
import android.widget.SimpleAdapter;
import android.widget.AdapterView.OnItemClickListener;import com.mas.R;public class popupTest extends Activity {
ImageButton btnPopupWindow;
public PopupWindow pop;
ListView listView,listView1;
LayoutInflater inflater;
SimpleAdapter adapter;
EditText et;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
et = (EditText)findViewById(R.id.et);
btnPopupWindow = (ImageButton)findViewById(R.id.imgbutton1);
btnPopupWindow.setOnClickListener(new ClickEvent());
}
//统一处理按键事件
public class ClickEvent implements OnClickListener{
@Override
public void onClick(View v){
// TODO Auto-generated method stub
doSth(v);
}
public void doSth(View v){
if(v==btnPopupWindow)
{
LayoutInflater inflater = (LayoutInflater)
popupTest.this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
listView = (ListView) inflater.inflate(R.layout.listview, null);
if(pop == null){
adapter = new SimpleAdapter(popupTest.this, getData(), R.layout.item,
new String[]{"img","info"}, new int[]{R.id.img,R.id.info});
listView.setFocusable(true);
listView.setItemsCanFocus(true);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
// TODO Auto-generated method stub
if(arg2==0){
Intent mIntent = new Intent();
mIntent.setClass(popupTest.this, tt.class);
startActivity(mIntent);
}
else if(arg2==1)
{
finish();
}
pop.dismiss();
pop = null;
}
});
pop = new PopupWindow(listView,150,LayoutParams.WRAP_CONTENT);
pop.setBackgroundDrawable(getResources().getDrawable(R.layout.rounded_corners_pop));
pop.setTouchable(true);
pop.setFocusable(true);
pop.showAsDropDown(btnPopupWindow,1,15);
}else{
pop.dismiss();
pop = null;
}
}
}
public List<Map<String, Object>> getData() {
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
Map<String, Object> map = new HashMap<String, Object>();
map.put("img", R.drawable.header);
map.put("info", "切换用户");
list.add(map);
map = new HashMap<String, Object>();
map.put("img", R.drawable.delete);
map.put("info", "退出程序");
list.add(map);
return list;
}
}
}
这段程序怎么在xml中写啊?哪位大哥大姐帮忙写一下。谢谢了
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货