마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

스위치 안 AlertDialog this

0 추천
package com.OM.iep;


import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;

public class Setting extends Activity {
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.settingxml);
           findViewById(R.id.hpb).setOnClickListener(mClickListener);
}
	Button.OnClickListener mClickListener = new Button.OnClickListener() {
		public void onClick(View v) {
			switch (v.getId()) {
			case R.id.hpb:

		 LinearLayout homelinear = (LinearLayout)findViewById(R.layout.homepage);
				
	new AlertDialog.Builder(this)
        .setView(homelinear)
	.setPositiveButton("OK", new DialogInterface.OnClickListener() {
	     public void onClick(DialogInterface dialog, int whichButton) {
		 String url = getString(R.string.Homepage);
  EditText addr = (EditText)findViewById(R.id.home);
    url = addr.getText().toString();
						}
					})
					.setNegativeButton("Cancel", null)
					.show();
			}
		}
	};

	} 

AlertDialog 생성하는도중 저 빨간색 this가 오류가나네요;

제가 아직 잘 몰라서요; 좀 알려주셨음 좋겠네요...

leessunny (120 포인트) 님이 2013년 10월 12일 질문

1개의 답변

0 추천
AlertDialog.Builder는 Context 를 넣어줘야 합니다.

Setting Activity를 넣으시려고 의도하신것 같으나,

사실 코드를 잘 보시면 Button.OnClickListener 가 this 로 잡힙니다.

 

 AlertDialog.Builder(Setting.this) 로 수정해 보세요.
밍이~ (5,780 포인트) 님이 2013년 10월 13일 답변
...