【总结】在两个Activity之间进行跳转时出错原因分析(一)——findViewById位置不当导致
2013-11-22 20:32
411 查看
在两个Activity之间进行跳转时,程序出错了,提示“意外停止”,起初很纳闷,因为程序很简单,而且很多都是从以前程序上复制的,怎么会出错呢。部分源程序如下:
上面的那个方法就是希望,当click一个ImageView时,进入一个Gallery,在Gallery的程序如下:
(上述程序有省略)
结果就出错了。
后来经过分析发现,出错的地方很隐蔽。
出错的地方为:
这样程序就可以正常运行了。
OnClickListener mImageViewoneL = new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub // Log.i(TAG,"进入mImageViewoneL"); Intent intent = new Intent(MainActivity.this, MyGalleryone.class); startActivity(intent); } };
上面的那个方法就是希望,当click一个ImageView时,进入一个Gallery,在Gallery的程序如下:
ublic class MyGalleryone extends Activity{ Gallery gallery = (Gallery) findViewById(R.id.gallery); ImageView fImageView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.galleryone); gallery.setAdapter(new ImageAdapter(this)); }
(上述程序有省略)
结果就出错了。
后来经过分析发现,出错的地方很隐蔽。
出错的地方为:
Gallery gallery = (Gallery) findViewById(R.id.gallery);我们不应该在此处就给gallery赋值,而应该改为如下代码:
public class MyGalleryone extends Activity{ Gallery gallery; ImageView fImageView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.galleryone); gallery = (Gallery) findViewById(R.id.gallery); gallery.setAdapter(new ImageAdapter(this)); }
这样程序就可以正常运行了。
相关文章推荐
- Django 初识 - 视图和url配置
- 使用(Drawable)资源——图片资源
- 文件把玩操作
- Java泛型
- 关于2014年度专业技术人员资格考试计划及有关问题的通知
- C#各种常用开源框架-支持开源!分享!
- MAVEN项目标准目录结构
- VDI转vmdk(VirtualBox与VMware硬盘格式转换)[转]
- ArcGIS技术:[1]ArcMap图层基础操作
- 谷歌浏览器用这个插件可以去除优酷的广告
- VC6.0程序打包【转】
- java继承。顾不了
- 算法-求二进制数中1的个数
- Android抽象布局——include、merge 、ViewStub
- linux shell export 环境变量
- 算法-求二进制数中1的个数
- [数据结构与算法]第一周(二):线性表---位查询&&放苹果
- Oracle 6 - 锁
- 零基础学数据结构马上改版完毕,欢迎大家多提宝贵意见。
- 2013/11/22工作随笔-缓存是放在Model层还是放在Controller层