1
This是facebook滑动菜单的一个示例。如何实现点击某个区域来执行操作?
滑动时,有20%的空间用户可以看到哪个与Facebook类似。 Facebook通过点击这个20%的任何位置来实现它,菜单向后滑动。
如何实现这个?
This是facebook滑动菜单的一个示例。如何实现点击某个区域来执行操作?
滑动时,有20%的空间用户可以看到哪个与Facebook类似。 Facebook通过点击这个20%的任何位置来实现它,菜单向后滑动。
如何实现这个?
这样做的一种方法就是在您的活动中使用OnTouchListener。您可以准确检测屏幕上触摸的位置。
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.LinearLayout;
import android.widget.Toast;
public class AndroidTestActivity extends Activity implements OnTouchListener {
LinearLayout main;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
main = (LinearLayout) findViewById(R.id.main_layout);
main.setOnTouchListener(this); // you need to set the touch listener for your view. And every element around the detection area.
}
public boolean onTouch(View v, MotionEvent e) {
if(e.getX() <= main.getWidth()/5) {
Toast.makeText(this, "In the %20..", Toast.LENGTH_SHORT).show();
return true;
}
return false;
}
}
您还需要标识主布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/main_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
谢谢您的回答,但它似乎并没有为我工作。即使我没有设置任何条件,但我点击布局的任何区域动画没有开始 –
20%区域我仍然有其他组件,但是我点击20%区域内的组件,它会做组件自己的功能,而不是开始动画 –
如果您有任何其他布局,图像视图或任何其他地方,你需要添加侦听器与setOnTouchListener他们.. – Jan