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

리스트에서 아이템 클릭시 putextra로 아이템을 내보내려고 합니다.

0 추천
메인 엑티비티

lv1.setOnItemClickListener(new AdapterView.OnItemClickListener() {
                @Override
                public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

                String intent_value=((TextView)view).getText().toString();
                    Intent i = new Intent(getApplicationContext(),subActivity.class);
                    i.putExtra("value",intent_value);
                    startActivity(i);
                }
            });

서브 엑티비티

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

            tvTitle = (TextView)findViewById(R.id.tvTitle);

           Intent i = getIntent();
            String text1 = i.getStringExtra("value");
            tvTitle.setText(text1);

리스트에서 아이템 클릭시 putextra로 아이템을 내보내려고 합니다.

텍스트뷰 tvTitle에 넣을 생각이구요.

 

그런데 오류가 뜨네요..

일주일째 이부분에 애먹고 있습니다.. 어떻게 고치면 될까요?

 

 

w 님이 2015년 5월 18일 질문

1개의 답변

0 추천
 
채택된 답변
/*
intent_value가 제대로 값이 나온다면
*/

String text1 =i.getExtras().getString("value");

 

어렵군요 (5,920 포인트) 님이 2015년 5월 18일 답변
그래도 그냥 종료가 되네요.. 전체적인 코드가 문제인가봅니다..
정확히 어떤 부분에 넣으면 되는지 알려주시면 감사하겠습니다
에러메시지를 올려주셔야 어디가 문제인지 알수있어요.. intent_value에 직접 문자열 아무거나 주었을때도 에러 뜨나요?
네 종료되네요..
참고로 말씀드리자면 4개의 탭에 리스트가 하나씩 들어가 있습니다.

05-18 15:54:45.619  31586-31586/com.example.administrator.recipetap_5 E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: com.example.administrator.recipetap_5, PID: 31586
    android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.administrator.recipetap_5/com.example.administrator.recipetap_5.subActivity}; have you declared this activity in your AndroidManifest.xml?
            at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1636)
            at android.app.Instrumentation.execStartActivity(Instrumentation.java:1430)
            at android.app.Activity.startActivityForResult(Activity.java:3584)
            at android.app.Activity.startActivityForResult(Activity.java:3545)
            at android.app.Activity.startActivity(Activity.java:3787)
            at android.app.Activity.startActivity(Activity.java:3755)
            at com.example.administrator.recipetap_5.MainActivity$1.onItemClick(MainActivity.java:58)
            at android.widget.AdapterView.performItemClick(AdapterView.java:313)
            at android.widget.AbsListView.performItemClick(AbsListView.java:1509)
            at android.widget.AbsListView$PerformClick.run(AbsListView.java:3516)
            at android.widget.AbsListView$3.run(AbsListView.java:5128)
            at android.os.Handler.handleCallback(Handler.java:733)
            at android.os.Handler.dispatchMessage(Handler.java:95)
            at android.os.Looper.loop(Looper.java:146)
            at android.app.ActivityThread.main(ActivityThread.java:5698)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1291)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1107)
            at dalvik.system.NativeStart.main(Native Method)
05-18 15:55:24.209  31586-31586/com.example.administrator.recipetap_5 I/Process﹕ Sending signal. PID: 31586 SIG: 9
have you declared this activity in your AndroidManifest.xml?
AndroidManifest.xml에 추가
<activity android:name=".subActivity"/>
Manifest에 activity가 등록되어있지 않아서 그래요.
AndroidManifest.xml 파일에 보면
<activity
  android:name=".MainActivity"
  ~~~~ >
  <intent-filter>
  ~~~
 </intent-filter>
</activity>

이런식으로 있을건데, 그거 밑에다가 intent-filter 부분만 제외하고 복사붙여넣기 하고 이름을 SubActivity로 바꾸세요
작동했어요!! 감격 ㅠㅠ 정말로 감사합니다!!
2일간 막혔던 부분인데 바보같이 저부분을 넘어가버렸어요 .. 시원한 답변 감사드립니다!!
...