Nasıl özel AlertDialog bir Görünüm uygulamak için
Android docs on AlertDialog Bir AlertDialog özel bir görünüm ayarlamak için aşağıdaki komutu ve örnek verir:
Eğer daha karmaşık bir görünüm görüntülemek istiyorsanız, FrameLayout "vücut" ve görünümünüzü ekleyin: . bak
FrameLayout fl = (FrameLayout) findViewById(R.id.body);
fl.add(myView, new LayoutParams(FILL_PARENT, WRAP_CONTENT));
Öncelikle, add()
bir yazım hatası olduğu çok açık ve addView()
çıkartılacaktır.
İlk satırı R. kimliği kullanarak kafam karıştı.vücut. Bu AlertDialog body öğesi var gibi görünüyor. ama sadece kod b/c derleme hatası verir giremiyorum. Nerede R. id.vücut tanımlı ya da atanmış olsun ya da her neyse?
İşte benim kod. Oluşturucu setView(findViewById(R.layout.whatever)
kullanmak için denedim ama işe yaramadı. Elle şişirmek istemedim çünkü sanıyorum?
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Title")
.setCancelable(false)
.setPositiveButton("Go", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int id) {
EditText textBox = (EditText) findViewById(R.id.textbox);
doStuff();
}
});
FrameLayout f1 = (FrameLayout)findViewById(R.id.body /*CURRENTLY an ERROR*/);
f1.addView(findViewById(R.layout.dialog_view));
AlertDialog alert = builder.create();
alert.show();
CEVAP
Doğrudan Düzen İnflater manzaralı oluşturabilirsiniz, tek düzen XML dosyasının adını ve dosya düzeninin KİMLİĞİ kullanmanız gerekir.
XML dosyası bu gibi bir kimliğe sahip olmalıdır:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@ id/dialog_layout_root"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
/>
Ve sonra aşağıdaki kodu oluşturucu düzeninizi ayarlayabilirsiniz:
LayoutInflater inflater = getLayoutInflater();
View dialoglayout = inflater.inflate(R.layout.dialog_layout, null);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(dialoglayout);
builder.show();
Nasıl düzgün özel kullanımına ve const...
Nasıl özel bir görünüm Kakao Otomatik ...
Nasıl özel yöntemleri, alanları veya i...
Nasıl özel nesneler ile bir NSMutableA...
Nasıl bir Etkinlik için başlık çubuğun...