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

intent 기초질문 해도 될까요?

0 추천

Main에서 ReceiveActivity로 인텐트를 넘겨주는 부분인데요

넘어가는 부분에서 계속 어플이 꺼집니다..

완전 초짜인데 어떻게서든 만들려고 코드는 뒤죽박죽이지만.. 한번 봐주세요.. ㅠ_ㅠ

 

//Main입니다.
public class Main extends Activity implements OnClickListener {
	Spinner spinner;
	private ArrayAdapter<String> listAdapter;
    private ListView list;


	
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
				R.array.localArr, android.R.layout.simple_spinner_dropdown_item);
		adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
		spinner=(Spinner)findViewById(R.id.select_local);
		spinner.setAdapter(adapter);
		
        Button btn = (Button)findViewById(R.id.btn_send);
        btn.setOnClickListener(this);
	}
	public void onClick(View v) {
		
		String str_local = (String) spinner.getSelectedItem();
		int spn_pos = spinner.getSelectedItemPosition();
		if(spn_pos==0){
			list_select();
		}


}
	public void list_select(){
			String[] S_0=getResources().getStringArray(R.array.S_0);
			listAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line,S_0);
			list = (ListView)findViewById(R.id.listview);
			list.setAdapter(listAdapter);
			list.setOnItemClickListener(mItemClickListener);
			 

		
	}
	AdapterView.OnItemClickListener mItemClickListener = new AdapterView.OnItemClickListener()
	{
		public void onItemClick(AdapterView<?> parent, View view, int position, long id){
			int place_pos = position;
			String place_name = ((TextView)view).getText().toString();
			
			/*
			AlertDialog.Builder alert = new AlertDialog.Builder(Main.this);
			alert.setMessage(place_pos+"\n"+place_name);
			alert.show();
			*/
			
			Intent it = new Intent(Main.this, ReceiveActivity.class);
			it.putExtra("it_name", place_name);
			it.putExtra("it_position", place_pos);

			startActivity(it);
			
			
			
		}
		
	};


}

 

 

//인텐트를 받는 액티비티입니당

public class ReceiveActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_receive);
		
		
		Intent r_it = getIntent();
		String place_name = r_it.getStringExtra("it_name");
		String place_position=r_it.getStringExtra("it_position");
		TextView pname=(TextView)findViewById(R.id.pname);
		pname.setText(place_name);
		
		

	}


}

 

log입니당

 

04-25 17:21:42.005: E/AndroidRuntime(1024): FATAL EXCEPTION: main
04-25 17:21:42.005: E/AndroidRuntime(1024): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.graduation/com.example.graduation.ReceiveActivity}: android.view.InflateException: Binary XML file line #9: Error inflating class TextViewe
04-25 17:21:42.005: E/AndroidRuntime(1024): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956)
04-25 17:21:42.005: E/AndroidRuntime(1024): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
04-25 17:21:42.005: E/AndroidRuntime(1024): at android.app.ActivityThread.access$600(ActivityThread.java:123)
04-25 17:21:42.005: E/AndroidRuntime(1024): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
04-25 17:21:42.005: E/AndroidRuntime(1024): at android.os.Handler.dispatchMessage(Handler.java:99)
04-25 17:21:42.005: E/AndroidRuntime(1024): at android.os.Looper.loop(Looper.java:137)
04-25 17:21:42.005: E/AndroidRuntime(1024): at android.app.ActivityThread.main(ActivityThread.java:4424)
 
 
책에 있는 예제 보고 따라했는데..
왜 제가 하면 안되는걸까요 ㅠㅠ
아미리소 (190 포인트) 님이 2013년 4월 25일 질문
intent 문제가 아닌것 같습니다. 로그를 읽어보시면 전개(inflate) 하는 xml 표현에 문제가 있다고 적혀있네요. xml 을 좀 더 이해해 보세요.

1개의 답변

+1 추천

R.layout.activity_receive XML 파일 9번째 라인에 TextViewe라고 타이포가 났네요

b22n (22,940 포인트) 님이 2013년 4월 25일 답변
...