listview点击item,在item的上边弹出popwindow
来源:互联网 发布:java报表工具 开源 编辑:程序博客网 时间:2024/05/15 01:03
public class ListActivity extends Activity {
private PopupWindow popupWindow;
private TextView mTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
LinearLayout ll = new LinearLayout(this);
ll.setLayoutParams( new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
ListView listView = new ListView(this);
ll.addView(listView);
setContentView(ll);
MyAdapter adapter = new MyAdapter();
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
initPopView();
listView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == MotionEvent.ACTION_UP) {
if (popupWindow.isShowing()) {
popupWindow.dismiss();
}
}
return false;
}
});
}
private void initPopView() {
View view = LayoutInflater.from(this).inflate(R.layout.pop_view, null);
mTextView = (TextView) view.findViewById(R.id.textview);
popupWindow = new PopupWindow(view, 300, 100);
}
class MyAdapter extends BaseAdapter{
@Override
public int getCount() {
// TODO Auto-generated method stub
return 10;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
final TextView textView = new TextView(ListActivity.this);
textView.setPadding(20, 20, 0, 20);
textView.setTextSize(25);
textView.setText("Hello Android");
textView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == MotionEvent.ACTION_DOWN) {
int[] location = new int[2];
v.getLocationOnScreen(location);
int dalta = (300 - v.getWidth()) / 2;
Log.e(this.getClass().getName(), ":" + location[0] + "=======" + location[1]);
popupWindow.showAtLocation(textView, Gravity.CENTER|Gravity.TOP, location[0] - dalta, location[1] - 100);
mTextView.setText("第" + position + "个");
}
return false;
}
});
return textView;
}
}
private PopupWindow popupWindow;
private TextView mTextView;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
LinearLayout ll = new LinearLayout(this);
ll.setLayoutParams( new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
ListView listView = new ListView(this);
ll.addView(listView);
setContentView(ll);
MyAdapter adapter = new MyAdapter();
listView.setAdapter(adapter);
adapter.notifyDataSetChanged();
initPopView();
listView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == MotionEvent.ACTION_UP) {
if (popupWindow.isShowing()) {
popupWindow.dismiss();
}
}
return false;
}
});
}
private void initPopView() {
View view = LayoutInflater.from(this).inflate(R.layout.pop_view, null);
mTextView = (TextView) view.findViewById(R.id.textview);
popupWindow = new PopupWindow(view, 300, 100);
}
class MyAdapter extends BaseAdapter{
@Override
public int getCount() {
// TODO Auto-generated method stub
return 10;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
final TextView textView = new TextView(ListActivity.this);
textView.setPadding(20, 20, 0, 20);
textView.setTextSize(25);
textView.setText("Hello Android");
textView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == MotionEvent.ACTION_DOWN) {
int[] location = new int[2];
v.getLocationOnScreen(location);
int dalta = (300 - v.getWidth()) / 2;
Log.e(this.getClass().getName(), ":" + location[0] + "=======" + location[1]);
popupWindow.showAtLocation(textView, Gravity.CENTER|Gravity.TOP, location[0] - dalta, location[1] - 100);
mTextView.setText("第" + position + "个");
}
return false;
}
});
return textView;
}
}
0 0
- listview点击item,在item的上边弹出popwindow
- PopWindow中添加listview,item点击事件解决
- ListView的Item点击效果
- ListView 的 item 点击效果
- ListView的item点击事件
- 获取ListView点击的Item
- ListView的item点击问题
- ListView item点击事件问题:第一次点击有效,再次点击item无效。场景是在item的展开效果
- 点击Listview弹出PopWindow的用法
- 点击Listview弹出PopWindow的用法
- PopupWindow--点击ListView的Item,popupwindow出现在点击item下方
- 在listview嵌套listview 并且想实现点击其中一个item隐藏item的内容
- 当长时间点击ListView时弹出contextMenu如何确定被点击listView中item的位置
- 如何在ListView中设置item的点击事件
- 点击listview的item实现下级listview
- listview 禁止item点击
- listview Item 无法点击
- ListView item点击失效
- 浅谈大学,爱好,与父母交流
- MTK6592 GPIO模拟I2C
- oKit产品视频全新上线
- CSDN week4及期中总结
- 关于回音消除技术
- listview点击item,在item的上边弹出popwindow
- Emmet(Zen Coding) 可以快速编写html/css
- Android应用源码ListView实现的目录树结构
- Ogre动画
- ext panel 自定义图片刷新
- cocos2d-x 2.2 android环境搭建(不用cygwin)
- 【日记】面对浩瀚的世界
- linux ioctl 函数
- Div+Css实现图层固定,吊窗