을 닫는 :마무리() 나는 다음을 수행 응용 프로그램했습니다이 개 활동 대신 한
활동 A -> 활동 B -> 활동 B2 -
활동 A> 활동 C를 -> 활동 C
B, B2 또는 C를 닫으면 이전 활동으로 이동합니다. A를 닫으면 앱을 종료합니다.
B에서 C에 도착하면 C는 한 가지 방법으로 작동하지만 B2에서 도착하면 C가 조금 다른 방식으로 작동합니다.
에뮬레이터와 모든 장치를 검사 할 때 완벽하게 작동하지만 안드로이드 4.0.4를 사용하는 두 개의 Xperia (모델 ARC & U)에 문제가 발생했습니다.
문제는 C에서 B로 도착할 때 발생합니다. C를 닫으면 B 대신 A로 돌아갑니다. B2에서 C에 도착하면 닫을 때 B2로 돌아갑니다.
나는 그것을 이해할 수 없다. C가 두 경우 모두 같은 방식으로 작업해야한다고 가정합니다.
그리고 다른 질문은 :이 앱을 제외한 나머지 모든 기기에서 앱이 어떻게 완벽하게 작동 할 수 있습니까?
아이디어가 있으십니까? 이 문제를 어떻게 해결할 수 있습니까?
편집 추가하는 코드 : B2에서
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
// TODO Auto-generated method stub
switch (position+1) {
case 1:
if(random == true){
AnimalsBD.cmpt = Integer.parseInt(ABD.getNAct(Integer.toString(Aguila.ordre)))+1;
}
Intent a = new Intent ("com.android.JIA.Animals.1");
startActivity(a);
break;
case 2:
if(random == true){
AnimalsBD.cmpt = Integer.parseInt(ABD.getNAct(Integer.toString(Anec.ordre)))+1;
}
Intent b = new Intent ("com.android.JIA.Animals.2");
startActivity(b);
break;
열기 C : B에서
열기 C
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
// TODO Auto-generated method stub
mpCorrecte = MediaPlayer.create(this, R.raw.correcte);
mpIncorrecte = MediaPlayer.create(this, R.raw.incorrecte);
if(start){
switch (position+1) {
case 1:
if(numSo==1){
start = false;
mpCorrecte.start();
mpCorrecte.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
Intent a = new Intent ("com.android.JIA.Animals.1");
startActivity(a);}
});
}else{
mpIncorrecte.start();
}
break;
case 2:
if(numSo==2){
start = false;
mpCorrecte.start();
mpCorrecte.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
Intent a = new Intent ("com.android.JIA.Animals.2");
startActivity(a);}
});
}else{
mpIncorrecte.start();
}
break;
는 두 경우 모두 내가있는 gridview에서 최종 작업을 개방하고있어 . 모든 최종 활동은 동등하게 작동합니다.
감사합니다.
코드를 게시하십시오. –
코드를 게시하여 다른 활동을 호출하는 방법 – Nirali
코드를 게시하십시오. –