2014-12-18 2 views
-1

내 MainActivity에서 Processing 클래스를 실행하려고합니다.Android - 활동을 연장하지 않는 새로운 활동을 시작 하시겠습니까?

runFocus = (Button)findViewById(R.id.buttonProcessing); 
    runFocus.setOnClickListener(new OnClickListener() 
    { 
     @Override 
     public void onClick(View v) 
     { 
       Intent intent = new Intent(MainActivity.this,ProcessingInterface.class); 
       startActivityForResult(intent,START_PROCESSING); 
     } 
    } 

: 여기

<activity 
     android:name="edu.bard.focus2.ProcessingInterface" 
     android:parentActivityName="edu.bard.focus2.MainActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.DEFAULT" /> 
     </intent-filter>   
</activity>  

내 의도입니다 : 내가 제대로 내 의도를 실행하고 있다고 생각하지만 난 오류 얻을 :

12-17 22:53:44.221: E/AndroidRuntime(1904): FATAL EXCEPTION: main 
12-17 22:53:44.221: E/AndroidRuntime(1904): Process: bard.edu.focus2, PID: 1904 
12-17 22:53:44.221: E/AndroidRuntime(1904): android.content.ActivityNotFoundException: Unable to find explicit activity class {bard.edu.focus2/bard.edu.focus2.ProcessingInterface}; have you declared this activity in your AndroidManifest.xml? 
12-17 22:53:44.221: E/AndroidRuntime(1904):  at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1628) 
12-17 22:53:44.221: E/AndroidRuntime(1904):  at android.app.Instrumentation.execStartActivity(Instrumentation.java:1424) 
12-17 22:53:44.221: E/AndroidRuntime(1904):  at android.app.Activity.startActivityForResult(Activity.java:3424) 

을 그리고 클래스는 내 매니페스트에 선언 문제는 내 처리 클래스 (자체적으로 올바르게 작동 함)가 오류의 원인 일 수있는 Activity가 아닌 PApplet을 확장한다는 것입니다. 맞다면 해결하기 위해 무엇을 할 수 있습니까? 그렇지 않다면 제안 사항이 있습니까?

감사합니다.

+1

Manifest에서 활동을 선언하는'edu.bard.focus2.ProcessingInterface' 대신'bard.edu.focus2.ProcessingInterface' –

답변

0

난 당신이 로그에 따라 잘못된 패키지 이름을 준 것 같아요 전에 매니페스트 파일에 다음 코드를 추가 .

변경 :

<activity 
     android:name="edu.bard.focus2.ProcessingInterface" 
     android:parentActivityName="edu.bard.focus2.MainActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.DEFAULT" /> 
     </intent-filter>   
    </activity>  

<activity 
     android:name="bard.edu.focus2.ProcessingInterface" 
     android:parentActivityName="bard.edu.focus2.MainActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.DEFAULT" /> 
     </intent-filter>   
    </activity>  

또는, 메인 packcage 이름은 단순히 쓸 수 bard.edu.focus2 경우 : 로그 사용으로

<activity 
      android:name=".ProcessingInterface" 
      > 
     </activity> 
+0

고맙습니다! 효과가있다. – user2399897

0

내가 알기까지 Activity을 확장해야합니다. 그렇지 않으면 작동하지 않습니다. - 아니 Context, 아니요. . . . 음, 많은, 많은 것들. 접근법 in this tutorial instead을 시도하십시오. 그것은 특별한 Android 기반 처리 빌드를 사용하여 안내합니다.

+0

감사합니다. 팁! 원래 mainActivity로 처리 코드를 시작하여이 접근법을 사용했습니다. 하지만 그때 나는 내 휴대폰에서 이미지를로드하고 사용자로부터 입력을 얻을 수있는 사용자 인터페이스가 부족합니다 ... – user2399897

+0

이미지 등을로드하는 사용자 프롬프트에 대한 몇 가지 추가 라이브러리가 있습니다 : http : //pif.github. io/android-select-file /. 하지만 당신 말이 맞습니다. 문서는 안드로이드 UI 요소의 믹싱이 제한적이라는 것을 분명히합니다. 나는 Processing도 좋아하지만, 안드로이드 벽지로 스케치를 실행하려고 할 때 그것을 포기했다. –

0

새로 작성한 활동을 Manifest 파일에 추가하지 않았습니다. 태그

<activity android:name=".newclassname" > 
     </activity> 

또는

<activity android:name="packagename.newclassname" > 
      </activity> 
+0

처리 클래스는 새로운 클래스입니다. 그 위에 mainActivity가 선언되어 있지만 여기에 코드에 포함되지 않았습니다. – user2399897

+0

이렇게 포함하십시오. –

+0

일했습니다! 감사합니다 – user2399897

관련 문제