2013-07-17 3 views
1

textview 및 button을 사용하여 메시지 상자를 표시하는 다음 코드를 작성했습니다. 버튼이 클릭되면 활동이 완료되어야합니다. 그러나 이것은 때로는 일하지 않고 일관성이 없습니다. 때로는 중단됩니다. 일관되게 작동하도록 만드는 방법? 확인 버튼을 클릭하는 동안 근로 조건에finish()가 제대로 작동하지 않습니다.

public class MyClass extends Activity { 
private TextView mText; 
private Button mOk; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.msgbox); 

    mText = (TextView) findViewById(R.id.txt); 
    mText.setText(“Click ok to exit”); 

    mOk = (Button) findViewById(R.id.ok); 
    mOk.setOnClickListener(mOnOkClickListener); 
} 

private final OnClickListener mOnOkClickListener = new OnClickListener() { 
    public void onClick(View v) { 
     finish(); 
    } 
}; 

}

, onPause, 이동 중지 및들의 OnDestroy이라고 도와주세요. 매달린 상태에서 onPause 만 호출하면 멈 춥니 다. 일관되게 작동시키는 방법?

+0

걸려있는 동안 onPause 만 호출되고 중단됩니다. ? 여기 onpouse 코드를 공유하십시오 –

+0

onPause에 작성된 코드가 있습니까? –

+0

no..i이 많은 코드 만 썼습니다 – indira

답변

1

DialogFragment으로 메시지를 만들 수 있습니다. 물론

DialogFragment df = new Dialog1(); 
    df.show(getSupportFragmentManager(), "tag"); 

당신이이 방법으로 더 복잡한 대화 상자를 만들 수 있습니다 - 우리는 AlertDialog.Builder하지만 it has much more to offer에서만 두 가지 방법을 사용 :

//imports you'll need to add: 
import android.app.Dialog; 
import android.app.AlertDialog; 
import android.support.v4.app.DialogFragment; 
import android.support.v4.app.FragmentActivity; 

//Activity that fires up your Dialog needs to be a FragmentActivity:   
public class MyActivity extends FragmentActivity { 

// ... 

//class representing Dialog you want to show 
public static class Dialog1 extends DialogFragment { 
    @Override 
    public Dialog onCreateDialog(Bundle savedInstanceState) { 
     AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); 
     builder.setMessage("Click ok to close"); 
     builder.setPositiveButton("Button text", null); 
     return builder.create(); 
    } 
} 

은 대화 상자를 실행 :
하면 설정.

관련 문제