搜索框,可以找android的searchView

解决方案 »

  1.   

    楼主 在此给你个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;
    }}
      

  2.   

    以下是XML布局文件及用到的图片
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".MainActivity" >    <Button
            android:id="@+id/bt1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/btn1" />    <LinearLayout
            android:id="@+id/ll"
            android:layout_width="300dp"
            android:layout_height="wrap_content"
            android:background="@drawable/back"
            android:orientation="horizontal"
            android:visibility="invisible" >        <EditText
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="1" />        <Button
                android:id="@+id/bt2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/btn2" />
        </LinearLayout></RelativeLayout>