안드로이드 개발 질문/답변
(글 수 45,052)
안드로이드 게임을 만들고 있는데 ㅠ
2틀동안 해매는데 안됩니다 ㅠ 안드로이드 선배님들의 도움이 정말 너무나 필요합니다 ㅠ 도와주세요 ㅠ
일단 패키지 안에 클래스가 4개입니다.
Main.java <-----메인화면(GameStart , Option , Quit) 버튼 이벤트 처리
RPG.java <--- Stage1의 생성만을 실행
Stage1.java <---- 스테이지1 구현
Graphics.java <---- 그래픽 그리기로 자주 이용하는 처리를 정리한 유틸리티 클래스.
이렇게 4개의 클래스로 구현 했습니다.
일단 메니페스트에 <activity android:name=".Main"/> 이렇게 Main으로 설정했습니다.
실행하면 메인화면이 나오게 하기 위해서요..
메인화면은 잘 나오는데
문제는 GameStart 버튼을 눌렀을때 Stage1으로 게임이 시작이 되야 하는데 ;
자꾸 오류가 납니다 (Unexpect 어쩌구 이런거요 ㅠ)
오후에 글을 올렸었는데
메니페스트에 설정을 <activity android:name=".Stage1"/> 이렇게 하라고 해서 해봤는데;
메인화면이 첨에 안뜨고; 바로 Stage1으로 실행이 되더라구요 ㅠ
제 생각엔 Main.java 클래스의 구현이 잘못된거 같은데 ㅠㅠ 도통 모르겠습니다 ㅠ,.ㅠ
정말 선배님들의 도움이 너무 필요해요 ㅠㅠ 도대체 뭐가 문제일까요 ㅠㅠ
소스 다 올려봅니다 ㅠㅠ 제발 도와주세요 ㅠㅠ
Main.java 클래스
Stage1.java 클래스
RPG.java 클래스
package net.solve.thequiz;
import android.app.Activity;
import android.os.Bundle;
import android.graphics.PixelFormat;
import android.view.Window;
제가 예상해서 만든 코딩은
메니페스트에서 <activity android:name=".Main"/> 일케 설정해서
메인화면 띄우고 GameStart 버튼을 눌르면 RPG.java 실행 <--- Stage1의 생성을 해주는 클래스
그래서 Stage1 실행
이렇게 되야 되는데 ㅠ
왜 GameStart 버튼을 눌르면 에러가 나면서 게임 실행이 안될까요 ㅠㅠ
메니페스트 설정을 <activity android:name=".RPG"/> 일케 설정하면 메인화면 나오지 않고 바로 스테이지1이 실행이 되는걸로 봐선
Main.java 클래스의 버튼 이벤트처리가 미숙한거 같은데 ㅠ 아 정말 이거 떔에 미치겠습니다 ㅠㅠ
글이 정말 너무 길어졌네요 ㅠㅠ
안드로이드 개발 선배님들 제발 ㅠ gamestart 버튼 눌렀을때 스테이지1 실행이 될수 있게 도와주세요 ㅠㅠ
너무 장문의 글을 올려서 죄송합니다;
즐거운 하루 보내세요!!!!
2틀동안 해매는데 안됩니다 ㅠ 안드로이드 선배님들의 도움이 정말 너무나 필요합니다 ㅠ 도와주세요 ㅠ
일단 패키지 안에 클래스가 4개입니다.
Main.java <-----메인화면(GameStart , Option , Quit) 버튼 이벤트 처리
RPG.java <--- Stage1의 생성만을 실행
Stage1.java <---- 스테이지1 구현
Graphics.java <---- 그래픽 그리기로 자주 이용하는 처리를 정리한 유틸리티 클래스.
이렇게 4개의 클래스로 구현 했습니다.
일단 메니페스트에 <activity android:name=".Main"/> 이렇게 Main으로 설정했습니다.
실행하면 메인화면이 나오게 하기 위해서요..
메인화면은 잘 나오는데
문제는 GameStart 버튼을 눌렀을때 Stage1으로 게임이 시작이 되야 하는데 ;
자꾸 오류가 납니다 (Unexpect 어쩌구 이런거요 ㅠ)
오후에 글을 올렸었는데
메니페스트에 설정을 <activity android:name=".Stage1"/> 이렇게 하라고 해서 해봤는데;
메인화면이 첨에 안뜨고; 바로 Stage1으로 실행이 되더라구요 ㅠ
제 생각엔 Main.java 클래스의 구현이 잘못된거 같은데 ㅠㅠ 도통 모르겠습니다 ㅠ,.ㅠ
정말 선배님들의 도움이 너무 필요해요 ㅠㅠ 도대체 뭐가 문제일까요 ㅠㅠ
소스 다 올려봅니다 ㅠㅠ 제발 도와주세요 ㅠㅠ
Main.java 클래스
package net.solve.thequiz;
import net.solve.thequiz.R; import android.app.Activity; import android.os.Bundle; import android.content.Intent; import android.view.View; import android.view.Window; import android.view.WindowManager; import android.view.View.OnClickListener;
public class Main extends
Activity implements OnClickListener {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
View gamestart = this.findViewById(R.id.gamestart);
gamestart.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v.getId() == R.id.gamestart){
Intent i = new Intent(this, RPG.class);
startActivity(i);
finish();
}
}
public void onBackPressed() {
}
}
Stage1.java 클래스
package net.solve.thequiz; import android.content.res.*; import android.content.*; import android.graphics.*; import android.view.*; import java.util.Random;
// RPG 뷰
public class Stage1 extends SurfaceView
implements SurfaceHolder.Callback,Runnable {
// 시스템 정수
private final static int // 장면(1)
S_MAP =0, // 맵
S_APPEAR =1, // 출현
S_COMMAND=2, // 명령
S_ATTACK =3, // 공격
S_DEFENCE=4, // 방어
S_ESCAPE =5, // 도망친다
//이하 코드 생략RPG.java 클래스
package net.solve.thequiz;
import android.app.Activity;
import android.os.Bundle;
import android.graphics.PixelFormat;
import android.view.Window;
//RPG
public class RPG extends Activity {
private static RPG rpg;
// 초기화
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFormat(PixelFormat.TRANSLUCENT);
rpg=this;
setContentView(new Stage1(this));
}
// 종료
public static void exit() {
rpg.finish();
}
}제가 예상해서 만든 코딩은
메니페스트에서 <activity android:name=".Main"/> 일케 설정해서
메인화면 띄우고 GameStart 버튼을 눌르면 RPG.java 실행 <--- Stage1의 생성을 해주는 클래스
그래서 Stage1 실행
이렇게 되야 되는데 ㅠ
왜 GameStart 버튼을 눌르면 에러가 나면서 게임 실행이 안될까요 ㅠㅠ
메니페스트 설정을 <activity android:name=".RPG"/> 일케 설정하면 메인화면 나오지 않고 바로 스테이지1이 실행이 되는걸로 봐선
Main.java 클래스의 버튼 이벤트처리가 미숙한거 같은데 ㅠ 아 정말 이거 떔에 미치겠습니다 ㅠㅠ
글이 정말 너무 길어졌네요 ㅠㅠ
안드로이드 개발 선배님들 제발 ㅠ gamestart 버튼 눌렀을때 스테이지1 실행이 될수 있게 도와주세요 ㅠㅠ
너무 장문의 글을 올려서 죄송합니다;
즐거운 하루 보내세요!!!!




메니피스트 설정 문제인거 같네요...
맨처음 실행할 엑티비티는 인텐트 필터에 카테고리에 메인과 런쳐를 갖는것이 좋습니다.
나머지야 있든 없든 그것은 실행하는 방식 나름이구요....
맨처음 실행할 엑티비티에 한해서 인텐트 필터에 카테고리에 메인과 런쳐를 가져야 합니다.
다른 예제들을 찾아서 메니피스트를 보세요.... 꼭 카테고리가 메인과 런쳐를 갖는 엑티비티가 있을겁니다.