gestureDetector = new GestureDetector(this);
webview1 = (WebView) findViewById(R.id.webview1);
webview2 = (WebView) findViewById(R.id.webview2); // 按钮
classification = (Button) findViewById(R.id.classification);
news = (Button) findViewById(R.id.news);
physical = (Button) findViewById(R.id.physical);
zoneking = (Button) findViewById(R.id.zoneking);
btn_serch = (Button) findViewById(R.id.btn_serch);
physical_btn = (Button) findViewById(R.id.physical_btn);
medical_btn = (Button) findViewById(R.id.medical_btn);
information_btn = (Button) findViewById(R.id.information_btn);
local_btn = (Button) findViewById(R.id.local_btn);
partTimeJob_btn = (Button) findViewById(R.id.partTimeJob_btn);
car_btn = (Button) findViewById(R.id.car_btn);
phone_btn = (Button) findViewById(R.id.phone_btn);
city_btn = (Button) findViewById(R.id.city_btn);
other_btn = (Button) findViewById(R.id.other_btn); linearLayout = (LinearLayout) findViewById(R.id.linearLayout); // 事件
webview1.loadUrl("http://www.baidu.com");
webview1.setFocusable(true);
webview1.requestFocus();
webview1.getSettings().setJavaScriptEnabled(true);
webview1.setWebViewClient(new WebViewClient() {
@Override
// 在WebView中而不是默认浏览器中显示页面
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
webview1.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
}
});
webview2
.loadUrl("http://192.168.1.154:8080/Report/login.do?operate=tologin&tjzxid=00000000000000000000");
webview2.getSettings().setJavaScriptEnabled(true);
webview2.clearCache(true);
webview2.getSettings().setSavePassword(false);
webview2.setFocusable(true);
webview2.requestFocus();
webview2.setWebViewClient(new WebViewClient() {
@Override
// 在WebView中而不是默认浏览器中显示页面
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
webview2.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} }); // 单击事件
classification.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification
.setBackgroundResource(R.drawable.classification_bg);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
news.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news_bg);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
physical.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical_bg);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
zoneking.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking_bg);
} }); // 触屏事件
classification.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
news.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
physical.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
zoneking.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
btn_serch.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
physical_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
medical_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
information_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
local_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
partTimeJob_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
car_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
phone_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
city_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
other_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
} public boolean onDown(MotionEvent e) { return false;
} public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH) {
return false;
}
if ((e1.getRawX() - e2.getRawX()) > SWIPE_MIN_DISTANCE
&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
.............
}
} public void onLongPress(MotionEvent e) {
System.out.println();
} public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
return false;
} public void onShowPress(MotionEvent e) {
webview1.requestFocus();
webview2.requestFocus();
} public boolean onSingleTapUp(MotionEvent e) {
return false;
}
现在在运行程序的时候,第一次单击Button按钮没有效果,第二次才能响应单击事件,为什么?怎么解决??第一次请求的时候触发的是哪个事件??
webview1 = (WebView) findViewById(R.id.webview1);
webview2 = (WebView) findViewById(R.id.webview2); // 按钮
classification = (Button) findViewById(R.id.classification);
news = (Button) findViewById(R.id.news);
physical = (Button) findViewById(R.id.physical);
zoneking = (Button) findViewById(R.id.zoneking);
btn_serch = (Button) findViewById(R.id.btn_serch);
physical_btn = (Button) findViewById(R.id.physical_btn);
medical_btn = (Button) findViewById(R.id.medical_btn);
information_btn = (Button) findViewById(R.id.information_btn);
local_btn = (Button) findViewById(R.id.local_btn);
partTimeJob_btn = (Button) findViewById(R.id.partTimeJob_btn);
car_btn = (Button) findViewById(R.id.car_btn);
phone_btn = (Button) findViewById(R.id.phone_btn);
city_btn = (Button) findViewById(R.id.city_btn);
other_btn = (Button) findViewById(R.id.other_btn); linearLayout = (LinearLayout) findViewById(R.id.linearLayout); // 事件
webview1.loadUrl("http://www.baidu.com");
webview1.setFocusable(true);
webview1.requestFocus();
webview1.getSettings().setJavaScriptEnabled(true);
webview1.setWebViewClient(new WebViewClient() {
@Override
// 在WebView中而不是默认浏览器中显示页面
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
webview1.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
}
});
webview2
.loadUrl("http://192.168.1.154:8080/Report/login.do?operate=tologin&tjzxid=00000000000000000000");
webview2.getSettings().setJavaScriptEnabled(true);
webview2.clearCache(true);
webview2.getSettings().setSavePassword(false);
webview2.setFocusable(true);
webview2.requestFocus();
webview2.setWebViewClient(new WebViewClient() {
@Override
// 在WebView中而不是默认浏览器中显示页面
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
webview2.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} }); // 单击事件
classification.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification
.setBackgroundResource(R.drawable.classification_bg);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
news.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news_bg);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
physical.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical_bg);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
zoneking.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking_bg);
} }); // 触屏事件
classification.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
news.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
physical.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
zoneking.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
btn_serch.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
physical_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
medical_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
information_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
local_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
partTimeJob_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
car_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
phone_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
city_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
other_btn.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
} public boolean onDown(MotionEvent e) { return false;
} public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH) {
return false;
}
if ((e1.getRawX() - e2.getRawX()) > SWIPE_MIN_DISTANCE
&& Math.abs(velocityX) > SWIPE_THRESHOLD_VELOCITY) {
.............
}
} public void onLongPress(MotionEvent e) {
System.out.println();
} public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
return false;
} public void onShowPress(MotionEvent e) {
webview1.requestFocus();
webview2.requestFocus();
} public boolean onSingleTapUp(MotionEvent e) {
return false;
}
现在在运行程序的时候,第一次单击Button按钮没有效果,第二次才能响应单击事件,为什么?怎么解决??第一次请求的时候触发的是哪个事件??
解决方案 »
- 关于getContentResolver()方法的疑问
- 不科学啊!Canvas使用了矩阵变换后使用drawVertices,保存的view还是原图而不是变换后的图,等好人ing.....
- 用VLC框架做的视频解码器能不能播放H264的视频?怎么做?求高手!!
- android数据库每次查询完都要关闭吗
- 图片设置背景大小不匹配的问题
- 避免onDraw(Canvas canvas)的重复性画图,急啊!
- 如何获取应用程序的入口ACTIVITY类
- Activity 切换问题(或者说按Home键finish Activity)
- 写一个网站的android客户端,有什么好的思路
- android打印的信息!!
- 如何编写信号强度检测的程序,有人能提供下思路吗?
- 请教如何修改Android自带的软键盘的样式?
classification.setOnClickListener(new OnClickListener() {public void onClick(View v) {
classification
.setBackgroundResource(R.drawable.classification_bg);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking);
}});
news.setOnClickListener(new OnClickListener() {public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news_bg);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking);
}});
physical.setOnClickListener(new OnClickListener() {public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical_bg);
zoneking.setBackgroundResource(R.drawable.zoneking);
}});
zoneking.setOnClickListener(new OnClickListener() {public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking_bg);
}});主要地主在这里,单击第一次按钮没响应,第二次才会执行,我做的是滑屏的程序
classification = (Button) findViewById(R.id.classification);
news = (Button) findViewById(R.id.news);
physical = (Button) findViewById(R.id.physical);
zoneking = (Button) findViewById(R.id.zoneking);
// 单击事件
classification.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification
.setBackgroundResource(R.drawable.classification_bg);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
news.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news_bg);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
physical.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResourc(R.drawable.classification);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical_bg);
zoneking.setBackgroundResource(R.drawable.zoneking);
} });
zoneking.setOnClickListener(new OnClickListener() { public void onClick(View v) {
classification.setBackgroundResource(R.drawable.classification);
news.setBackgroundResource(R.drawable.news);
physical.setBackgroundResource(R.drawable.physical);
zoneking.setBackgroundResource(R.drawable.zoneking_bg);
} });
// 触屏事件
classification.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
news.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
physical.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
zoneking.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event))
return true;
else
return false;
} });
//滑屏动画
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
float velocityY) {
if (Math.abs(e1.getY() - e2.getY()) > SWIPE_MAX_OFF_PATH) {
return false;
}
}
public void onLongPress(MotionEvent e) {
System.out.println();
} public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
float distanceY) {
return false;
} public void onShowPress(MotionEvent e) {
webview1.requestFocus();
webview2.requestFocus();
} public boolean onSingleTapUp(MotionEvent e) {
return false;
}
简化了的主体程序,帮忙看下。
return true;
else
return false;
}
你这是干嘛
直接处理返回个true
打个Log看对不对
Button.setFocusable(true);(只加这个没有用,同样无法获得焦点)
Button.setFocusableInTouchMode(true);(这个必须加,获得焦点和TouchMode有关)http://blog.csdn.net/ch_984326013/article/details/6702958