在我的一个活动中,我有一个ImageView,我将它设置为onTouchListener,为了在屏幕上移动它,问题是当我在调试模式下测试它时一切正常,我看到ImageView是在屏幕上移动,我也可以点击它。但是,当我为发布模式创建一个已签名的APK并在同一台设备上进行测试时,它没有响应!
图像视图位于RelativeLayout内部并配置为:
files, err := ioutil.ReadDir("./")
if err != nil {
log.Fatal(err)
}
for _, val := range files {
// To handle codeowner and readme
if !val.isDir(){
continue
}
// To handle .git
if val.Name() == ".git"{
continue
}
err := filepath.Walk(val, func(path string, f os.FileInfo, err error) error {
// Traverse dircectory , subdirectories and files
}
,代码是:(此代码在onCreate方法中找到)
gradle-wrapper.properties
我还有一个GestureDetectorListener来检测singleTap:
<ImageView
android:id="@+id/imageView"
android:layout_width="90dp"
android:layout_height="90dp"
android:layout_centerInParent="true"
android:src="@drawable/app_launcher"
android:clickable="true"
/>
答案 0 :(得分:0)
在创建时声明手势类:
final GestureDetector mGesDetect = new GestureDetector(this, new GestureListener());
之后放置图像触摸列表器,如下面的代码:
imageView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
mGesDetect.onTouchEvent(event);
return true;
}
});
private class GestureListener extends GestureDetector.SimpleOnGestureListener{
@Override
public boolean onSingleTapUp(MotionEvent e) {
return true;
}
@Override
public boolean onSingleTapConfirmed(MotionEvent e) {
return true;
}
}