나는로부터 데이터를 전달에 문제가 오전 DialogBox
에 Activity
누군 데 주요 활동을
일을했다 Button
버튼을 클릭하면 window.The이 대화 상자가 열리고 Dialog window
있다
EditText
두 Buttons
가 전달해야 .When 추가 버튼을 클릭 할 때 EditText
주요 activity.This에 데이터를 시나리오입니다. 여기 내 코드가 있습니다.
MainActivity.java
public class MainActivity extends ActionBarActivity {
Button showdialog;
CustomDialog cdd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
showdialog = (Button) findViewById(R.id.button);
showdialog.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
cdd=new CustomDialog(MainActivity.this);
cdd.show();
}
});
}
public void getinfo() {
Toast.makeText(this,"hi",Toast.LENGTH_SHORT).show();
cdd.dismiss();
}
}
CustomDialog.java
public class CustomDialog extends Dialog implements View.OnClickListener{
Activity c;
Button add,cancel;
EditText name;
MainActivity act;
public CustomDialog(Activity a) {
super(a);
this.c=a;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_custom_dialog);
add = (Button) findViewById(R.id.button2);
cancel = (Button) findViewById(R.id.button3);
name = (EditText) findViewById(R.id.editText);
add.setOnClickListener(this);
cancel.setOnClickListener(this);
act = new MainActivity();
Intent myintent=new Intent();
}
@Override
public void onClick(View v) {
switch(v.getId()) {
case R.id.button2:
act.getinfo();
break;
case R.id.button3:
dismiss();
}
}
}
이 코드를 실행하면 MainActivity Leaked
오류가 발생합니다.
Activity
비 활동 클래스에서 객체를 생성하여 확장 되는 클래스에서 메서드를 호출하는 대신에서 발생 interface
하는 트리거 이벤트를 사용하여 사용자 지정 이벤트 리스너를 만들어야 합니다.onClick
Dialog
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다