虽然以前做过一些android但是,这一章做起来还是有些要记录的。
1.出现errors running builder 'Android Pre Compiler' on project'项目名称':java.lang.NullPointerException问题
后来网上查了下这样解决了
- Open properties of project in Eclipse then Resources -> Resource filters.
- Click the "Add..." button -> Check "Exclude all", "Files and folders", "All children". In the text entry box input ".svn" (without quotes).
- Restart Eclipse
我的环境是最新的,所以和书上不一样,结果多了一个项目appcompat_v7_8我把这个项目关闭了,导致很多识别不了,后来开了就行了。
3.程序启动不了。
我是在手机上运行的,一运行就报错no view found for id 。。。。。
Eclipse默认的是setContentView(R.layout.activity_quiz);而打开的layout文件是fragment_quiz的,这时,我改为setContentView(R.layout.fragment_quiz)还是报错,干脆就将fragment_quiz.xml复制到activity_quiz.xml了,有个
//if
(savedInstanceState == null) {
// getSupportFragmentManager().beginTransaction()
// .add(R.id.container, new PlaceholderFragment()).commit();
//}
报错,注释掉了,就运行了。
虽然问题解决了,但是还是很多不太懂。慢慢学霸。
4.事件的写法
我更习惯这么写,也是不同的风格吧,供大家参考
public
class QuizActivity extends ActionBarActivity implements OnClickListener {
。。。。。。
mTrueButton.setOnClickListener(this);
mFalseButton.setOnClickListener(this);
。。。。。
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
switch(arg0.getId())
{
case R.id.true_button:
Toast.makeText(this,R.string.true_button,Toast.LENGTH_SHORT).show();
break;
case R.id.false_button:
Toast.makeText(this,R.string.false_button,Toast.LENGTH_SHORT).show();
break;
}
}
。。。。。。。
}