안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요..
현재 아럴트다이얼로그(AlertDialog)를 이용해서 입력받은 값을 스피너에 추가하려고 하는데요..
아럴트다이얼로그를 이용하지 않고 그냥 스피너에 add형식으로 추가는 되는데
아럴트다이얼로그에서 클릭버튼 누를 경우에 add형식으로 추가하면 오류가 뜨네요;
오류가 나는 부분은 정작 코드 한줄;;
이 코드 한줄이 왜 오류가 나는건지 알수가없네요.. 블락이 걸리게 되어버리는데
public class MainActivity extends Activity {
ArrayAdapter
<CharSequence>adapter;
Spinner
spin;
List<CharSequence>server;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button
SetButton =(Button)findViewById(R.id.Set_Button);
Button
ConnectButton =(Button)findViewById(R.id.Connect_Button);
server=new ArrayList<CharSequence>();
adapter=new
ArrayAdapter<CharSequence>(this,android.R.layout.simple_dropdown_item_1line,server);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
spin=(Spinner)findViewById(R.id.Spinner01);//스피너등록
spin.setAdapter(adapter);
spin.setPrompt("FTP Server
List");
SetButton.setOnClickListener(new View.OnClickListener() {//SET 버튼 클릭시
@Override
public void onClick(View v)
{
Context mContext =
getApplicationContext();
LayoutInflater inflater = (LayoutInflater)
mContext.getSystemService(LAYOUT_INFLATER_SERVICE);
View layout =
inflater.inflate(R.layout.custom_dialog,null);
AlertDialog.Builder
aDialog = new
AlertDialog.Builder(MainActivity.this);
aDialog.setTitle("Settings");
aDialog.setView(layout);
final
EditText
Address=(EditText)findViewById(R.id.Address);
aDialog.setPositiveButton("OK",
new DialogInterface.OnClickListener() {
ArrayAdapter
<CharSequence>adapter;
Spinner
spin;
List<CharSequence>server;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button
SetButton =(Button)findViewById(R.id.Set_Button);
Button
ConnectButton =(Button)findViewById(R.id.Connect_Button);
server=new ArrayList<CharSequence>();
adapter=new
ArrayAdapter<CharSequence>(this,android.R.layout.simple_dropdown_item_1line,server);
adapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
spin=(Spinner)findViewById(R.id.Spinner01);//스피너등록
spin.setAdapter(adapter);
spin.setPrompt("FTP Server
List");
SetButton.setOnClickListener(new View.OnClickListener() {//SET 버튼 클릭시
@Override
public void onClick(View v)
{
Context mContext =
getApplicationContext();
LayoutInflater inflater = (LayoutInflater)
mContext.getSystemService(LAYOUT_INFLATER_SERVICE);
View layout =
inflater.inflate(R.layout.custom_dialog,null);
AlertDialog.Builder
aDialog = new
AlertDialog.Builder(MainActivity.this);
aDialog.setTitle("Settings");
aDialog.setView(layout);
final
EditText
Address=(EditText)findViewById(R.id.Address);
aDialog.setPositiveButton("OK",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
server.add(Address.getText().toString());
}
server.add(Address.getText().toString());
}
});
aDialog.setNegativeButton("CANCEL", new
DialogInterface.OnClickListener() {
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
AlertDialog ad =
aDialog.create();
ad.show();
}
});
}
}
AlertDialog ad =
aDialog.create();
ad.show();
}
});
}
}
위 빨간줄 하나를 실행시키려고 하는건데 빨간줄만 안되네요 ㅠㅠ;
어디가 문제인지 .. 여기는 고수분들 많으시니 꼭 해결해주시리라 믿습니다.




에러가 안나야 정상인데..
Address 를 address로 바꺼보세요.. 아마 Address 클래스를 참조하고 있는게 아닌지.