请告诉我,如何将按钮添加到标题栏。
- 例如,完全删除标题并使用 ImageView 创建自定义标题。
或者
- 使用另一种方法
我的目标类似于 Facebook 应用程序
更新: API 级别 >= 10
请告诉我,如何将按钮添加到标题栏。
或者
我的目标类似于 Facebook 应用程序
更新: API 级别 >= 10
我认为,使用 Android 的 Actionbar 是最佳实践。更喜欢操作菜单而不是自定义标题栏中的按钮。
请参见 :
对于actionbar的进一步实现,请参考:
我的解决方案使用自定义 ViewGroup(来自 RelativeLayout),因此我可以在不同的活动中使用它,而无需复制粘贴 xml。这是一个使用标题更新文本视图的简单示例。您可以将按钮添加到相对布局并让它们以您需要的方式工作。
但是,如果您只有一个 Activity,最好将其包含为 Activity 主布局的子布局
public class StatusBar extends RelativeLayout {
private TextView textViewTitle;
public StatusBar(Context context, AttributeSet attrs) {
LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
layoutInflater.inflate(R.layout.ui_status_bar, this, true);
super(context, attrs);
}
@Override
public void onFinishInflate() {
super.onFinishInflate();
textViewTitle = (TextView) findViewById(R.id.textViewTitle);
}
private void updateStatusBar(String title) {
this.textViewTitle.setText(title)
}
}
和 ui_status_bar.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/theme_color_darker"
android:gravity="center_vertical" >
<TextView
android:id="@+id/textViewTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="5dp"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textStyle="bold" />
</RelativeLayout>
在您的活动中,您可以像这样使用它:
<com.uicomponents.statusbar.StatusBar
android:id="@+id/statusBar"
style="@style/status_bar" />