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

자바에서 배경사이즈와 이미지를 넣고 싶습니다.

0 추천

동적으로 배경사이즈와 이미지를 바꾸려고 합니다.

 

if문에서 특정 조건이 들어오면 서로 다른 사이즈와 배경이미지를 넣으려고 하는데

에러가 뜹니다. 원인이 뭔지 잘 몰라서 도움을 부탁드려도 될까요

 

 


container = (FrameLayout)findViewById(R.id.main_container);
		
		FrameLayout.LayoutParams params1 = new FrameLayout.LayoutParams(
				LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
params1.height = 1080;
				params1.width = 293;
				container.setLayoutParams(params1);
				container.setBackgroundResource(R.drawable.img4_1full);
xml 부분을 어떻게 해줘야 하나요??
자바에서 크기사이즈를 넣으면 xml에서는 아예 가로세로 항목을 없애야하는지 아니면
fill, wrap, match 옵션을 어떤걸줘야하나요
<FrameLayout
            android:layout_width="293dp"
            android:layout_height="589dp"
        	android:background="@drawable/img4_1"
            android:orientation="vertical"
            android:id="@+id/main_container" >

 

 

 

에러메세지

 

 

10-09 17:28:04.328: E/AndroidRuntime(9008): FATAL EXCEPTION: main
10-09 17:28:04.328: E/AndroidRuntime(9008): java.lang.ClassCastException: android.widget.FrameLayout$LayoutParams cannot be cast to android.widget.LinearLayout$LayoutParams
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.LinearLayout.measureVertical(LinearLayout.java:664)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.LinearLayout.onMeasure(LinearLayout.java:583)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.View.measure(View.java:12844)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.ScrollView.measureChildWithMargins(ScrollView.java:1709)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.ScrollView.onMeasure(ScrollView.java:779)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.View.measure(View.java:12844)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.View.measure(View.java:12844)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.LinearLayout.onMeasure(LinearLayout.java:583)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.View.measure(View.java:12844)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
10-09 17:28:04.328: E/AndroidRuntime(9008): at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2194)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.View.measure(View.java:12844)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1092)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2470)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.os.Handler.dispatchMessage(Handler.java:99)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.os.Looper.loop(Looper.java:137)
10-09 17:28:04.328: E/AndroidRuntime(9008): at android.app.ActivityThread.main(ActivityThread.java:4526)
10-09 17:28:04.328: E/AndroidRuntime(9008): at java.lang.reflect.Method.invokeNative(Native Method)
10-09 17:28:04.328: E/AndroidRuntime(9008): at java.lang.reflect.Method.invoke(Method.java:511)
10-09 17:28:04.328: E/AndroidRuntime(9008): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:788)
10-09 17:28:04.328: E/AndroidRuntime(9008): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
10-09 17:28:04.328: E/AndroidRuntime(9008): at dalvik.system.NativeStart.main(Native Method)
 

 

 

 

 

브루스웨인 (8,580 포인트) 님이 2013년 10월 9일 질문

1개의 답변

+1 추천
 
채택된 답변

android:orientation="vertical"

이 부분은 LinearLayout에만 사용가능 한것 아닌가요??

 

익명사용자 님이 2013년 10월 9일 답변
브루스웨인님이 2013년 10월 14일 채택됨
중간에 제가 프레임으로 바궜는데 그대로 남아있었네요.
...