对于自定义View
//加载样式
TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.TitleBarView, defStyleAttr, 0);
setTitle(typedArray.getString(R.styleable.TitleBarView_main_title));
//不能写成这样
// setTitle(typedArray.getString(R.attr.main_title));
这个是代码提示不了你的错误,查找了一天,居然是这样,特此记过
对于FragmentActivity
这是一个和低逼的错误,就是在写Activity是,在mxl中引用fragment标签,之后怎么都运行不了…………调试了一天,才发现可以引用fragment的Activity是FragmentActivity.
使用兼容模式时的Menu
对于menu的showAsAction无效的话,是因为使用兼容包,这时候是要应用app的的命名包:
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<!--使用app命名空间showAsAction才有效果-->
<item
android:id="@+id/search"
android:icon="@android:drawable/ic_menu_search"
android:title="search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="ifRoom|collapseActionView" />
</menu>