удалить лишнюю недвижимость из верхней части пользовательского диалога - PullRequest
3 голосов
/ 22 августа 2010

Я создал собственный диалог, в который я динамически помещаю представления через RelativeLayout.Каждый раз, когда отображается диалоговое окно, оно показывает все мои дочерние представления просто великолепно, но у него есть некоторое пространство вверху, которое я не могу объяснить.Я предполагаю, что это зарезервировано для «заголовка» диалога (которого у меня не будет).Есть ли способ удалить это пространство и сделать так, чтобы мой пользовательский диалог просто оборачивал содержимое, которое я вставляю?

вот XML для макета:

<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content">
  <RelativeLayout
     android:id="@+id/handlay"
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" />  
</LinearLayout>

кстати, яЯ пытался просто сделать относительный макет родительским узлом с теми же результатами.

Вот .java для пользовательского диалога.

public class HandResults extends Dialog implements DialogInterface {
    HandResults hr;
    Timer myTimer;
    RelativeLayout handrl;


    // constructor sets the layout view to handresult layout
    public HandResults(Context context) {
        super(context);
        setContentView(R.layout.handresults);
        hr = this;

    }

    // create a timer to remove the dialog after 3 seconds
    public void showHands(){
        this.show();
        myTimer = null;
        myTimer = new Timer();
        myTimer.schedule(new TimerTask() {
            @Override
            public void run() {
                hr.cancel(); 
            }
        }, 3000);

    }
}

и вот как я бы назвалдиалоговое окно:

HandResults mhr = new HandResults(this);
mhr.showHands();

независимо от того, что я делаю или как меняю файл макета, у меня всегда есть этот буфер вверху, как мне избавиться от этого?

1 Ответ

18 голосов
/ 23 августа 2010

Поместите этот код в метод contstructor или onCreate () класса:

    requestWindowFeature(Window.FEATURE_NO_TITLE);

Должно быть перед вызовом метода setContentView.

...