有什么区别,更重要的是在Andriod视图XML中有不同前缀的必要性?
例如,
<android.support.v7.widget.Toolbar
android:id="@+id/actionToolBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:contentInsetEnd="20dp"
app:contentInsetEnd="20dp"
android:elevation="3dp"
/>
Run Code Online (Sandbox Code Playgroud)
有contentInsetEnd两个android和app.
请有人帮帮我!我尝试将appcompat搜索视图添加到我的项目中.不成功.当我将android.support.v7.widget.SearchView更改为SearchView(API> 10)时,一切都很好.
我的菜单res:
<item android:id="@+id/action_search"
android:title="@string/search_view_title"
android:icon="@drawable/action_search"
sabd:showAsAction="always|collapseActionView"
sabd:actionViewClass="android.support.v7.widget.SearchView" />
Run Code Online (Sandbox Code Playgroud)
这是我如何尝试使用SeachView:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
inflater.inflate(R.menu.teach, menu);
mSearchItem = menu.findItem(R.id.action_search);
mSearchItem.setVisible(true);
mSearchView = (SearchView) MenuItemCompat.getActionView(mSearchItem);
mSearchView.setQueryHint(getString(R.string.search_view_hint));
mSearchView.setOnQueryTextListener(this);
}
Run Code Online (Sandbox Code Playgroud)
这是我的清单文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ru.rgups.time"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="17" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.Base.AppCompat.Light"
android:name="RTApplication">
<activity
android:name="ru.rgups.time.MainActivity"
android:configChanges="orientation|keyboardHidden"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".fragments.WelcomeActivity"></activity>
<service android:name=".spice.SampleSpiceService"></service>
<activity …Run Code Online (Sandbox Code Playgroud) 这样做时我总是得到textView为null:
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
MenuItem searchItem = menu.findItem(R.id.action_search);
SearchView searchView = (SearchView) MenuItemCompat
.getActionView(searchItem);
int id = searchView.getContext().getResources().getIdentifier("android:id/search_src_text", null, null);
TextView textView = (TextView) searchView.findViewById(id);
textView.setTextColor(Color.WHITE);
}
Run Code Online (Sandbox Code Playgroud)
谁知道为什么?