2012-07-09 22 views
7

मेरे पास एक कस्टम संवाद है जो संवाद से बढ़ाया गया है। उस पर घटक रखने के लिए, मुझे संवाद की चौड़ाई जानने की आवश्यकता है। मैं यह कैसे कर सकता हूँ? धन्यवादएंड्रॉइड में एक कस्टम संवाद का आकार कैसे प्राप्त करें?

संपादित करें:

public class AnswerTypeDialog extends Dialog{ 
    public AnswerTypeDialog(Context context) { 
     super(context); 
     mContext = context; 
    } 

    @Override 
    protected void onCreate(final Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     init(); 
    } 

    protected void init(){ 
     ll=(RelativeLayout) LayoutInflater.from(mContext).inflate(R.layout.answertype_layout, null); 
     this.requestWindowFeature(Window.FEATURE_NO_TITLE); 
     setContentView(ll); 
     mWindowWidth = this.getWindow().getAttributes().width; 
    } 
} 

mWindowWidth शून्य है।

+0

यह आपके ऊपर है जो आप संवाद की ऊंचाई चौड़ाई देते हैं। – AkashG

+0

@seaplain क्या आप इसे समझते थे? – anuj

+0

आपको जिस तरह से लगता है उसे बदलने की कोशिश करें। संसाधन का उपयोग स्क्रीन आकार के आधार पर एकाधिक लेआउट की पहचान और निर्माण करें। – vladaman

उत्तर

-2

आप इस स्निपेट

int height=mDialog.getWindow().getDecorView().getHeight(); 
int width=mDialog.getWindow().getDecorView().getWidth(); 
+1

लेकिन यह 0 – shohreh

+0

@Shohreh हमें कुछ कोड दिखाता है जो आप कर रहे हैं – Akram

+4

यह केवल इसकी विशेषता के साथ एक स्थिर जुड़ा हुआ है, उदाहरण के लिए -2 = WRAP_CONTENT। यह जवाब बेकार है। – slezadav

0

यह काम करेंगे उपयोग कर सकते हैं।

@Override 
    public void onWindowFocusChanged (boolean hasFocus) { 
     super.onWindowFocusChanged(hasFocus); 
     int height=mDialog.getWindow().getDecorView().getHeight(); 
    int width=mDialog.getWindow().getDecorView().getWidth(); 
} 

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^