2012-05-06 97 views
1

我是來自中國的新生。我想在屏幕頂部做一個android對話框活動。設置Android對話活動位置

我已經設置好的樣式,因爲這:

<resources> 
<style name="Theme.InputAddressDialog" parent="android:style/Theme.Dialog"> 
    <item name="android:windowNoTitle">true</item> 
    <item name="android:layout_width">fill_parent</item> 
    <item name="android:gravity">top</item> 
    <item name="android:layout_gravity">top</item> 
</style> 

對話活動出現在垂直的,但不是頂級的中心。任何人都可以幫助我?提前致謝!

+1

不起作用是不足以說什麼的。告訴你如果遇到崩潰共享日誌,你會遇到什麼問題。我的第一個猜測是缺少layout_height。因此導致崩潰 –

+1

嘗試http://stackoverflow.com/questions/7478417/positon-an-acitvity-applied-with-a-theme-dialog-at-a-particular-x-y-position? – Luksprog

+0

是的!有用!!非常感謝你!!! –

回答

4

我解決這個問題如下。

LayoutParams lp = this.getWindow().getAttributes(); 
    lp.gravity = Gravity.TOP | Gravity.LEFT; 
    lp.dimAmount = 0; 
    lp.flags = LayoutParams.FLAG_LAYOUT_NO_LIMITS 
      | LayoutParams.FLAG_NOT_TOUCH_MODAL; 

    LayoutInflater inflater = getLayoutInflater(); 
    LinearLayout ll = (LinearLayout) inflater.inflate(
      R.layout.input_address, null); 
    setContentView(ll, lp); 
+0

非常好的解決方案 –