


请教各位大神,这两种效果怎么才能实现,求指教
------解决思路----------------------
popwindow 搞定
------解决思路----------------------
搜索框,可以找android的searchView
------解决思路----------------------
楼主 在此给你个DEMO 红色字体为关键处
package app.example.test0929;
import android.os.Bundle;
import android.app.Activity;
import android.view.GestureDetector;
import android.view.GestureDetector.OnGestureListener;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.Toast;
public class MainActivity extends Activity implements OnGestureListener {
private Button bt1;// 让编辑框所在的线性布局显示出来的按钮
private LinearLayout ll;// 编辑框所在的线性布局
private Button bt2;// 输入完字后的确定按钮
private GestureDetector gd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt1 = (Button) findViewById(R.id.bt1);
bt2 = (Button) findViewById(R.id.bt2);
ll = (LinearLayout) findViewById(R.id.ll);
gd = new GestureDetector(this, this);
bt1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
ll.setVisibility(View.VISIBLE);// 让该控件显示出来
}
});
bt2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
ll.setVisibility(View.INVISIBLE);// 让该控件隐藏
Toast.makeText(MainActivity.this, "已经点击了确定按钮牛", 1000).show();
}
});
}
// 将该Activity的触碰事件交给GestureDetector处理
@Override
public boolean onTouchEvent(MotionEvent event) {
return gd.onTouchEvent(event);
}
// 按下时立即触发该方法
@Override
public boolean onDown(MotionEvent e) {
ll.setVisibility(View.INVISIBLE);// 让该控件隐藏
return false;
}
// 用户在屏幕按下并且还未移动和松开时触发该方法(它类似于OnLongClickListener的效果)
@Override
public void onShowPress(MotionEvent e) {
}
// 用户在屏幕上轻击触发该方法(它类似于OnClickListener的效果)
@Override
public boolean onSingleTapUp(MotionEvent e) {
return false;
}
// 用户在屏幕上"滚动"时触发该方法(在"动"时触发该方法)
@Override
public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
return false;
}
// 当在屏幕上用户长按时触发该方法
@Override
public void onLongPress(MotionEvent e) {
}
// 用户在屏幕上"拖过"时触发该方法(在"过"时即手指离开屏幕时触发该方法)
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
return false;
}
}