Google'ın Inbox Uygulamasında yeni bir e-posta oluşturduğunu gördüm, araç çubuğunda geri düğmesi (bir ok) yerine bir "kapat" düğmesi var (resme bakın).
Bunu nasıl başarabilirim?
Google'ın Inbox Uygulamasında yeni bir e-posta oluşturduğunu gördüm, araç çubuğunda geri düğmesi (bir ok) yerine bir "kapat" düğmesi var (resme bakın).
Bunu nasıl başarabilirim?
Yanıtlar:
Kullanım
this.getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_action_close);
Bunu başarmak için.
Kendi yakın simgenizi oluşturabilir veya GitHub'da ayarlanan materyal tasarım simgesinden alabilirsiniz . Ayrıca, geri oku olarak kapatma işlevi yapmak için bu satırı yukarıdaki satırın önüne ekleyin.
this.getSupportActionBar().setDisplayHomeAsUpEnabled(true);
Manifest'te bir üst öğe tanımlamanız ve ardından tabii ki destek uygulama çubuğunu kullanıyorsanız onSupportNavigationUp () öğesini geçersiz kılmanız gerekir . Ayrıca simge paketleri için şu kullanışlı siteye gidin: https://www.google.com/design/icons/
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.yourAwesomeLayout);
setupToolBar();
}
private void setupToolBar() {
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
if (toolbar == null) return;
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeAsUpIndicator(R.drawable.ic_close_white_24dp);
}
@Override
public boolean onSupportNavigateUp() {
finish(); // close this activity as oppose to navigating up
return false;
}
onSupportNavigateUp()
mı? Belgeler bunun sadece bir başarı bayrağı olduğunu söylüyor
geç yanıt için üzgünüm. sizin için en kolay çözümü buldum . burada her şeyden önce cevap benim için çalışmıyor ( because i want to use toolbar not actionBar due to theming
) bu yüzden xml düzeni aracılığıyla kapat düğmesi eklemeyi deneyin. ve çalışıyor.
Burada araç çubuğuna (v7) kapat düğmesi eklemek için bir xml sözdizimi verilmiştir.
app:navigationIcon="@drawable/ic_close_black_24dp"
@drawable/ic_close_black_24dp
geliyor?
Manifest'teki ana etkinliği tanımlamanın bir alternatifi, bu örnekte olduğu gibi onOptionsItemSelected yönteminde hangi eylemin gerçekleştirileceğini işlemektir:
@Override
public boolean onOptionsItemSelected(MenuItem item){
switch (item.getItemId()) {
// Respond to the action bar's Up/Home/back button
case android.R.id.home:
finish();
break;
}
return super.onOptionsItemSelected(item);
}