在活动顶部添加按钮

问题描述 投票:0回答:3

我想在活动布局的顶部添加一些按钮(在图片中标记)但无法找到如何执行此操作。我应该搜索哪些短语?

enter image description here

android android-layout button
3个回答
1
投票

正如Ben P所说,那称为Menu。

您需要使用选项创建XML,并在活动中呈现XML。

例如,让我们调用这个menu_test.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity" >
    <item android:id="@+id/action_download"
       android:title="@string/download_information"
       android:orderInCategory="100"
       android:icon="@drawable/ic_file_download_white_24dp"
       app:showAsAction="always" />
</menu>

正如您在指南中看到的那样,如果有一个图标,showAsAction将显示图标,如果没有,则显示标题。如果删除该行,则将其添加到三点按钮。

现在在活动中

 @Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_test, menu);
    return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();
    if (id == R.id.action_download) {
        //YOUR METHOD HERE
        return true;
    }
    return super.onOptionsItemSelected(item);
}

希望能帮助到你。


2
投票

出现在那里的按钮(文本和图标)都是所谓的选项菜单中的项目。用于创建选项菜单的开发人员指南如下:https://developer.android.com/guide/topics/ui/menus.html#options-menu


1
投票

您需要从活动中删除操作栏。您可以为活动设置NoActionBar主题。在你的布局xml中,你可以添加工具栏,其中包括如下代码的按钮。

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#131313"
    android:minHeight="?attr/actionBarSize">

    <LinearLayout
        android:layout_width="wrap_content"
        android:background="#00aaaaaa"
        android:layout_gravity="right"
        android:layout_height="match_parent">

        <Button
            android:text="Delete"
            android:layout_width="wrap_content"
            android:background="#000"
            android:textColor="#fff"
            android:layout_height="wrap_content"
            android:textSize="16dp" />

    </LinearLayout>

</android.support.v7.widget.Toolbar>

在onCreate()函数中,您可以添加以下代码:

Toolbar topToolBar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(topToolBar);
ActionBar actionBar = getSupportActionBar();;
actionBar.setDisplayHomeAsUpEnabled(true);
© www.soinside.com 2019 - 2024. All rights reserved.