마스터Q&A
접속유지
가입하기
안드로이드 Q&A
최근 질문
미답변 질문
태그
사용자
질문하기
마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다.
안드로이드펍
에서 운영하고 있습니다. [
사용법
,
운영진
]
인기있는 태그
초보어플개발
(3427)
안드로이드스튜디오
(2664)
안드로이드-초보어플개발
(1333)
안드로이드-스튜디오
(1086)
도와주세요-
(995)
이미지
(970)
listview
(866)
리스트뷰
(844)
오류
(805)
레이아웃
(693)
fragment
(675)
webview
(670)
스플래쉬 이미지 질문이요!!!!!!!!
0
추천
스플래쉬를 넣고
실행을 하면
메인xml이 잠깐 보여지고 스플래쉬xml이 보여지는데요
메인xml화면이 안나오게 할 수 없나요?
안드로이드
splash
송이송이
(
830
포인트)
님이
2014년 7월 31일
질문
Please
log in
or
register
to add a comment.
답변 달기
·
글에 소스 코드 보기 좋게 넣는 법
·
질문에 대해 추가적인 질문이나 의견이 있으면 답변이 아니라 댓글로 달아주시기 바랍니다.
표시할 이름 (옵션):
답변이 채택되거나 답변에 댓글이 달리면 이메일로 알려드립니다:
답변이 채택되거나 댓글이 달리면 이메일로 알려드립니다
개인정보: 당신의 이메일은 이 알림을 보내는데만 사용됩니다.
스팸 차단 검사:
스팸 검사를 다시 받지 않으려면
로그인
하거나 혹은
가입
하세요.
1개의 답변
0
추천
처음부터 스플래시 xml을 보이게 하면 되지 않나요?
익명사용자
님이
2014년 7월 31일
답변
protected void onCreate(Bundle savedInstanceState) {
startActivity(new Intent(this, splash.class));
super.onCreate(savedInstanceState);
this.setContentView(R.layout.activity_main);
이렇게 해놨는데 그러더라고요
1. super.onCreate(savedInstanceState); 앞에는 아무것도 넣지 마세요. 정상동작하지 않을 수 있습니다.
2. this.setContentView(R.layout.activity_main);를 호출하지 말고 finish() 하세요.
구조가 좀 이상하군요.
splash 액티비티를 실행하고, spash 액티비티가 main 액티비티를 실행하도록 순서를 바꾸어 보세요.
07-31 15:42:21.402: E/AndroidRuntime(15265): FATAL EXCEPTION: main
07-31 15:42:21.402: E/AndroidRuntime(15265): Process: net.kirauks.andwake, PID: 15265
07-31 15:42:21.402: E/AndroidRuntime(15265): java.lang.RuntimeException: Unable to start activity ComponentInfo{net.kirauks.andwake/net.kirauks.andwake.MainActivity}: java.lang.NullPointerException
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2203)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2253)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.app.ActivityThread.access$800(ActivityThread.java:142)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1203)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.os.Handler.dispatchMessage(Handler.java:102)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.os.Looper.loop(Looper.java:136)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.app.ActivityThread.main(ActivityThread.java:5120)
07-31 15:42:21.402: E/AndroidRuntime(15265): at java.lang.reflect.Method.invokeNative(Native Method)
07-31 15:42:21.402: E/AndroidRuntime(15265): at java.lang.reflect.Method.invoke(Method.java:515)
07-31 15:42:21.402: E/AndroidRuntime(15265): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:792)
07-31 15:42:21.402: E/AndroidRuntime(15265): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:608)
07-31 15:42:21.402: E/AndroidRuntime(15265): at dalvik.system.NativeStart.main(Native Method)
07-31 15:42:21.402: E/AndroidRuntime(15265): Caused by: java.lang.NullPointerException
07-31 15:42:21.402: E/AndroidRuntime(15265): at net.kirauks.andwake.MainActivity.onCreate(MainActivity.java:184)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.app.Activity.performCreate(Activity.java:5275)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
07-31 15:42:21.402: E/AndroidRuntime(15265): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2167)
07-31 15:42:21.402: E/AndroidRuntime(15265): ... 11 more
강종..
net.kirauks.andwake.MainActivity.onCreate(MainActivity.java:184)
이 라인에는 뭐가 있나요?
finish() 호출뒤에는 아무것도 실행아면 안됩니다.
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// this.setContentView(R.layout.splash);
finish();
final ActionBar actionBar = this.getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setIcon(getTitleColor());
// 액션바 색상
// actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#589cd0")));
actionBar.setBackgroundDrawable(new ColorDrawable(Color
.parseColor("#0100FF")));
// 탭 색상
actionBar.setStackedBackgroundDrawable(new ColorDrawable(Color
.parseColor("#0100FF")));
this.mSectionsPagerAdapter = new SectionsPagerAdapter(
this.getSupportFragmentManager());
this.mViewPager = (ViewPager) this.findViewById(R.id.pager);
this.mViewPager.setAdapter(this.mSectionsPagerAdapter);
this.mViewPager
.setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
actionBar.setSelectedNavigationItem(position);
}
});
for (int i = 0; i < this.mSectionsPagerAdapter.getCount(); i++) {
actionBar.addTab(actionBar.newTab()
.setText(this.mSectionsPagerAdapter.getPageTitle(i))
.setTabListener(this));
}
}
이거고요
184 줄에는
this.mViewPager.setAdapter(this.mSectionsPagerAdapter);
입니다
올리신 코드가 main액티비티인가요, splash액티비티 인가요?
main액티비티라고 가정하고 말씀드리면,
super.onCreate(savedInstanceState); 뒤에
startActivity(new Intent(this, splash.class)); 를 호출하고,
finish() 뒤에 return을 넣어서 종료하세요.
setContentView을 안했으니까 findViewById를 호출하면 당연히 null이 나옵니다.
메인입니다
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
startActivity(new Intent(this, splash.class));
this.setContentView(R.layout.activity_main);
finish();
이렇게 하는데
뭘리턴해야되나요?
finish() 아래에 return ; 한 줄 넣으세요.
메인activity에서 this.setContentView(R.layout.activity_main); 를 호출하면 메인 화면이 먼저 보이는 걸 피할 수 없습니다.
위에 말씀드린대로 splash 액티비티를 실행하고, spash 액티비티가 main 액티비티를 실행하도록 순서를 바꾸세요.
그런데 리턴을 넣으면 그 밑에 코드가 사용할 수 없는 코드라고 나옵니다..
return 을 넣으면 그 아래의 코드는 실행이 되지 않으니 당연히 그렇게 경고가 나옵니다.
return 아래의 코드는 모두 주석처리하세요.
음 감사합니다!!!!!!
Please
log in
or
register
to add a comment.
...