我有一个Action Bar(使用actionbarsherlock),里面有两个项目.其中之一是用户在我的应用中收集的积分数量.我想在点数变化时更改此操作栏按钮.
我无法弄清楚如何设置该Button的TextView.如何通过代码设置?
我想显示一个总是在我的扩展中的AutoCompleteTextViewActionBar.这是我的菜单xml:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/visibility_menu_search"
android:icon="@drawable/ic_action_search"
android:showAsAction="always"
android:actionLayout="@layout/visibility_search" />
</menu>
Run Code Online (Sandbox Code Playgroud)
这是我的 layout/visibility_search.xml
<AutoCompleteTextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/visibility_search_auto_complete_text_view" />
Run Code Online (Sandbox Code Playgroud)
这是我的活动:
public class VisibilityActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(layout.visibility_activity);
getActionBar().setDisplayShowTitleEnabled(false);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.visibility, menu);
return super.onCreateOptionsMenu(menu);
}
}
Run Code Online (Sandbox Code Playgroud)
我正在使用,showAsAction="always"因为我希望AutoCompleteTextView始终可见(这将是唯一的东西ActionBar).
我AutoCompleteTextView总是在右边对齐ActionBar,只有100px的宽度.为什么是这样?
更新
感谢Atul O Holic的回答,我为我的案例找到了一个首选解决方案,它根本不需要任何特殊逻辑.我要离开我的答案是正确的,因为它适用于一般情况下,但对于我的具体情况,一个SearchView是更好,更容易.