Q:R.java 资源无法自动刷新
A:将Project菜单下的Build Automatically选上。删除 main.out.xml,AndroidManifest.out.xml等中间文件.
Q: main.xml无法编译通过(语法无问题)
A:
1) 可能在编辑器中打开了main.out.xml,导致编译无法重新生成main.out.xml出错.
2) 直接Run了main.xml,而不是Run [ProjectName] (此原因在帮一个同事分析xml文件老是解析错误的时候发现此等低级错误,无语中)
Q:No enclosing instance of the type Activity02 is accessible in scope
A:
intent.setClass(Activity01.this, Activity02.class);//如果不小心写成intent.setClass(Activity01.this, Activity02.this);
就会出现上述错误,第二个参数需要的是一个class的名字(Class<?> cls).
类似的错误也将出现这个提示。
button.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v)
{
/* 新建一个Intent对象 */
Intent intent = new Intent();
/* 指定intent要启动的类 */
intent.setClass(Activity01.this, Activity02.class);
/* 启动一个新的Activity */
startActivity(intent);
/* 关闭当前的Activity */
Activity01.this.finish();
}
});
Q:findViewById返回是null
A:原因是要查找的控件不在当前的layout文件中,需要使用LayoutInflater来查找,参考代码如下:
LayoutInflater inflater = getLayoutInflater();
View layout = inflater.inflate(R.layout.dbgrid, null);
TextView tv_title = (TextView)layout.findViewById(R.id.tv_TitleStyled);
TextView tv_cell = (TextView)layout.findViewById(R.id.tv_CellStyled);
View v_horizontal = (View)layout.findViewById(R.id.v_HorizontalSperator);
View v_vertical = (View)layout.findViewById(R.id.v_VertialSperator);
Q:@id与@android:id的区别
A: @id引用的是你自己定义的id,而@android:id是引用android默认定义的id。
@+id/myid表示如果不存在该myid,则新建.
@+id/section_spinner means you are creating an id named section_spinner in the namespace of your application. You can refer to it using @id/section_spinner .
@android:id/list means you are referring to an list defined in the android namespace.
Q:如何启动网页浏览器程序?
A:
Intent webIntent = new Intent(android.content.Intent.ACTION_VIEW,
Uri.parse("http://www.google.com.hk/search?q=gson"));
startActivity(webIntent);
//AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET"/>
//这里要注意Uri的http:不能写成其它任何大写字母形式,如 Http: 会报如下错误,也就是区分大小写,同时以http:作为协议启动相应的系统Activity
05-29 01:35:43.230: E/AndroidRuntime(463): android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=Http://www.baidu.com/ }
Q:XML配置文件相互包含
A: <include layout="@layout/list_view1" />
Q:CREATE TABLE android_metadata failed错误解决方法
A:
出现以上提示或 :
1. 如果是采用SQLitezDatabase打开数据库:
myDB = SQLiteDatabase.openDatabase(stPathToDB, null, SQLiteDatabase.NO_LOCALIZED_COLLATORS|SQLiteDatabase.OPEN_READONLY);
加上
SQLiteDatabase.NO_LOCALIZED_COLLATORS Flag