2012-07-05 14 views
5

मेरे पास यह संवाद फ़्रेगमेंट है। जब मैं इसे दिखाता हूं, तो यह पूर्णस्क्रीन बन जाता है, मेरा मतलब है कि यह वर्तमान स्क्रीन को ओवरलैप करता है। इसे AlertDialog की तरह छोटा कैसे करें?डायलॉगफ्रैगमेंट पूर्णस्क्रीन है। इसे छोटा बनाने के लिए कैसे करें

मैंने अनुमान लगाया है कि यह रिलेवेटिवआउट के कारण है इसलिए मैंने रिलेवेटिवआउट के बाहर लीनियरलाउट को लपेट लिया लेकिन कुछ भी नहीं बदला।

public class LoginDialogFragment extends DialogFragment { 

@Override 
public void onCreate(final Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setStyle(DialogFragment.STYLE_NORMAL, android.R.style.Theme); 
} 

@Override 
public View onCreateView(final LayoutInflater inflater, final ViewGroup container, 
     final Bundle savedInstanceState) { 
    final View v = inflater.inflate(R.layout.login_dialog, container, false); 
    final EditText emailEditText = (EditText)v.findViewById(R.id.emailEditText); 
    final EditText passwordEditText = (EditText)v.findViewById(R.id.passwordEditText); 
    final Button loginButton = (Button)v.findViewById(R.id.loginButton); 
    loginButton.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(final View v) { 
       checkLogin(emailEditText.getText().toString(), passwordEditText.getText().toString()); 
      } 
     }); 
    return v; 
} 
} 

लेआउट

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" > 

    <RelativeLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" > 

    <TextView 
     android:id="@+id/loginTitleTextView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_centerHorizontal="true" 
     android:text="@string/loginDialogTitle" 
     android:textColor="@color/White" 
     android:textSize="20sp" /> 

    <EditText 
     android:id="@+id/emailEditText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_below="@+id/loginTitleTextView" 
     android:layout_weight="1" 
     android:ems="10" 
     android:inputType="textEmailAddress" > 

     <requestFocus /> 
    </EditText> 

    <EditText 
     android:id="@+id/passwordEditText" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_below="@+id/emailEditText" 
     android:layout_weight="1" 
     android:ems="10" 
     android:inputType="textPassword" /> 

    <TextView 
     android:id="@+id/passwordTextView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/passwordEditText" 
     android:layout_alignBottom="@+id/passwordEditText" 
     android:layout_alignParentLeft="true" 
     android:layout_weight="1" 
     android:text="@string/password" 
     android:textColor="@color/White" 
     android:textSize="16sp" /> 

    <TextView 
     android:id="@+id/emailTextView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/emailEditText" 
     android:layout_alignBottom="@+id/emailEditText" 
     android:layout_alignParentLeft="true" 
     android:layout_weight="1" 
     android:text="@string/email" 
     android:textColor="@color/White" 
     android:textSize="16sp" /> 

    <Button 
     android:id="@+id/loginButton" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_below="@+id/passwordEditText" 
     android:text="@string/loginButtonText" /> 

    </RelativeLayout> 

</LinearLayout> 
+0

क्या आपने इसे किसी भी मौके से समझा है? –

+0

@ Emerald214 यह कोशिश करें अपने फ्रैगमेंट एक्ट एक्ट = नई फ्रैगमेंट एक्टिविटी(); act.show(); खंड के रूप में जोड़ने के बजाय। यह – krishh

उत्तर

2

कॉल setStyle(STYLE_NORMAL, android.R.style.Theme_Dialog); बजाय onCreate() में setStyle(DialogFragment.STYLE_NORMAL, android.R.style.Theme);। क्या इससे मदद मिली?

+0

सामग्री के आधार पर दिखाएगा और आकार बदल देगा, यह – Dmitry

+0

आपकी मूल थीम क्या नहीं है? SetStyle (DialogFragment.STYLE_NO_TITLE, android.R.style.Theme_Holo_Light_Dialog) आज़माएं; ऑनक्रेट() विधि –

+0

के अंदर मुझे एक ही समस्या है और यह कुछ भी नहीं बदलेगा –

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