Как добавить кнопку плюс в область заголовка приложения Android?
Как добавить кнопку плюс в область как на картинке?
Главная особенность в том, что кнопка должна находиться там, где находится название приложения, в зелёной области.
Если можно, то желательно на kotlin.
Ответы (1 шт):
Автор решения: Анастасия
→ Ссылка
Привожу код на обоих языках, так как не уверена на 100% в своих познаниях Kotlin. Надеюсь, это окажется полезным.
В папке res/menu необходимо создать файл разметки меню, например mainmenu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/action_plus"
android:icon="@drawable/yourplusdrawable"
android:showAsAction="always"/>
</menu>
А в классе Вашей Activity нужно добавить метод (если его ещё нет), в котором прописать добавление этого меню на панель.
Java:
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.mainmenu, menu);
return true;
}
Kotlin:
fun onCreateOptionsMenu(menu:Menu):Boolean {
val inflater = getMenuInflater()
inflater.inflate(R.menu.mainmenu, menu)
return true
}
Чтобы обрабатывать нажатия на элемент меню, добавьте метод:
Java:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == R.id.action_plus) {
// тут что-то делать
}
return super.onOptionsItemSelected(item);
}
Kotlin:
fun onOptionsItemSelected(item:MenuItem):Boolean {
val id = item.getItemId()
if (id == R.id.action_plus)
{
// тут что-то делать
}
return super.onOptionsItemSelected(item)
}
