Pertanyaan Bagaimana cara menambahkan ikon yang dapat diklik ke sudut paling kiri dari bilah aktivitas di Android?


Saya ingin tahu bagaimana saya bisa membuat ikon yang dapat diklik di pojok bilah tindakan. Saya menemukan cara untuk menambahkan itu ikon aplikasi di sudut, tetapi tidak dapat diklik dan memiliki jeda waktu penting setelah membuka aplikasi untuk muncul.

Pada titik itu, saya ingin dapat menempatkannya apa saja ikon di sana, bukan hanya ikon aplikasi. Saya juga ingin ikonnya dapat diklik dan akhirnya memiliki pilihan untuk menempatkan aktivitas di tempatnya seperti menyegarkan halaman atau kembali ke atas, seperti aplikasi twitter. Saya akan menyertakan tangkapan layar dari aplikasi saya dan aplikasi twitter untuk memberi Anda gambaran tentang apa yang saya minta.

Gambar aplikasi twitter dengan tombol ditekan karena saya menginginkannya:

enter image description here

Gambar aplikasi saya dengan tombol aktivitas yang saya tambahkan tetapi tidak di sudut kiri:

enter image description here


4
2018-01-19 03:24


asal


Jawaban:


Saya tidak yakin ini menjawab pertanyaan Anda dengan sempurna, tetapi Baru-baru ini saya membuat bilah alat khusus yang memiliki tombol di kiri, tengah, dan kanan.
Karena saya hanya memiliki satu Aktivitas, saya telah menempatkan XML ini di layout MainActivity saya. Jika Anda menginginkannya di atas setiap Aktivitas, itu mungkin tidak pintar ..

Dalam Activity xml, sebagai elemen pertama gunakan ini:

<android.support.v7.widget.Toolbar
    android:id="@+id/main_screen_top_toolbar"
    android:minHeight="?attr/actionBarSize"
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:contentInsetStart="0dp"
    app:contentInsetStart="0dp"
    android:theme="@style/MainToolBarTheme"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <ImageButton
        android:id="@+id/main_screen_top_toolbar_settings"
        android:layout_height="75dip"
        android:layout_width="75dip"
        android:layout_gravity="left"
        android:background="@drawable/icon_settings" />

    <ImageButton
        android:id="@+id/main_screen_top_toolbar_logo"
        android:layout_height="70dip"
        android:layout_width="120dip"
        android:layout_gravity="center"
        android:background="@drawable/icon_app" />

    <ImageButton
        android:id="@+id/main_screen_top_toolbar_social"
        android:layout_height="80dip"
        android:layout_width="70dip"
        android:layout_gravity="right"
        android:background="@drawable/icon_social" />

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

Dalam style.xml - tetapkan tema Aplikasi menjadi NoActionBar

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
</style>

<style name="MainToolBarTheme">
    <item name="android:background">@android:color/white</item>
    <item name="android:layout_height">100dp</item>
</style>

Dalam kode Anda (file .java) - Anda dapat merujuk ke tombol seperti:

ImageButton settingsButton = (ImageButton) v.findViewById(R.id.main_screen_top_toolbar_settings);

settingsButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            //Do whatever...
        }
    });

Ubah ikon / id dari ImageButton untuk menjadi ikon dan id Anda. Semoga ini bisa membantu, beri tahu saya jika Anda membutuhkan bantuan lebih lanjut.


2
2018-02-08 08:41



Periksa kode di bawah ini. Semoga ini akan berhasil untuk Anda,

Di XML Anda: 1. Tambahkan bilah alat ke file tata letak Anda di bagian atas.

<LinearLayout> 
......
......
...  
<android.support.v7.widget.Toolbar
 android:id = "@+id/toolbar"
 xmlns:local = "http://schemas.android.com/apk/res-auto"
 android:layout_width = "match_parent"
 android:layout_height = "wrap_content"
 android:background = "@color/colorPrimary"
 android:minHeight = "?attr/actionBarSize"
 local:popupTheme = "@style/ThemeOverlay.AppCompat.Light"
 local:theme = "@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>

..... 
.........
</LinearLayout>

Kemudian dalam Activity Anda tulis kode di bawah ini onCreate. Pastikan Anda meluas Aktivitas AppCompat.

Toolbar toolbar;
toolbar = (Toolbar)findViewById(R.id.toolbar);

setSupportActionBar(toolbar);
if (getSupportActionBar() != null) {
  getSupportActionBar().setDisplayShowHomeEnabled(true);
  toolbar.setNavigationIcon(R.drawable.ic_menu);  // Replace with your icon
}

Di dalam Anda style.xml, tambahkan kode berikut ke tema aplikasi Anda,

<item name = "windowNoTitle">true</item>
<item name = "windowActionBar">false</item>

Ini pasti akan berhasil. Mencoba.. Selamat coding .. !!


2
2018-02-08 10:00