public class CollectUrlActivity extends Activity {
/** Called when the activity is first created. */
private ListView listView;
WebView webView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
listView = new ListView(this);
webView=new WebView(this);
listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,getData()));
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
setTitle("点击第"+arg2+"个项目");
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("http://sina.com");
setContentView(webView);
}
});
setContentView(listView);
}
public boolean onKeyDown(int keyCode,KeyEvent event)
{
if(webView.canGoBack() && keyCode == KeyEvent.KEYCODE_BACK)
{
webView.goBack();
return true;
}
setContentView(listView);
return super.onKeyDown(keyCode, event);
} private List<String> getData(){
List<String> data = new ArrayList<String>();
data.add("测试数据1");
data.add("测试数据2");
data.add("测试数据3");
data.add("测试数据4");
return data;
}
}
就是要求点击listview的item 然后链接倒一个网址
在返回的时候再显示listview
/** Called when the activity is first created. */
private ListView listView;
WebView webView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
listView = new ListView(this);
webView=new WebView(this);
listView.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,getData()));
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
setTitle("点击第"+arg2+"个项目");
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("http://sina.com");
setContentView(webView);
}
});
setContentView(listView);
}
public boolean onKeyDown(int keyCode,KeyEvent event)
{
if(webView.canGoBack() && keyCode == KeyEvent.KEYCODE_BACK)
{
webView.goBack();
return true;
}
setContentView(listView);
return super.onKeyDown(keyCode, event);
} private List<String> getData(){
List<String> data = new ArrayList<String>();
data.add("测试数据1");
data.add("测试数据2");
data.add("测试数据3");
data.add("测试数据4");
return data;
}
}
就是要求点击listview的item 然后链接倒一个网址
在返回的时候再显示listview
解决方案 »
- 求解:listview窗口滚动后,item背景色混乱
- android的如何使用异或方式绘图。
- Android市场更新软件的方式
- android闹钟重复的问题
- Android系统下运行J2SE应用程序
- 【Android GPS & 基站定位需考虑的因素】
- 怎样调用系统自带的图片浏览器浏览图片?
- android谷歌地图问题
- mqtt频繁中断问题,恳请大牛解答?急切...
- SQLite Database与SQLiteExpertPersonal两者区别、作用、联系?
- 自定义控件No resource identifier found for attribute 'who' in package
- RelativeLayout.LayoutParams如何设置 gravity这个属性 用方法实现
切来切去干吗?直接可见不可见就行了啊
额 就是不会阿 我做windows开发的,搞C++的
同学让我帮他写个小的软件,大侠们还能帮忙看看如何实现我的功能
webView.canGoBack(),这个判断有问题,你可以这么做:
加个全局变量boolean webView_show = false; //true 为webwiew显示
setTitle("点击第"+arg2+"个项目");
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("http://sina.com");
setContentView(webView);
webView_show = true; //显示webwiew的同时,把webView_show = true;返回事件这样写
public boolean onKeyDown(int keyCode,KeyEvent event)
{
if (webView_show && keyCode == KeyEvent.KEYCODE_BACK) {
//点击返回,且webView显示时,触发
System.out.println("gogo");
setContentView(listView);
webView_show = false;
return false;
}
//其他关闭程序
return super.onKeyDown(keyCode, event);
}
再提个问题:我进入网页后,我点击了网页中的链接,又进入了另个页面
这个时候我按返回应该是返回上个页面,再按返回才是回到listView,这个时候我该如何判断
//点击返回,且webView显示时,触发
System.out.println("gogo");
setContentView(listView);
webView_show = false;
return false;
}
if (webView_show && keyCode == KeyEvent.KEYCODE_BACK && webView.canGoBack()) {
//返回上个页面
}
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
setTitle("点击第"+arg2+"个项目");
Uri uri= Uri.parse("http://sina.com");
Intent i = new Intent(Intent.ACTION_VIEW, uri);
XXXActivity.this.startActivity(i);
也不用去setContentView }
});