2013-01-24 2 views
0

지도를 표시하는 앱이 있습니다. 사용자가 작업 막대 중 하나를 누르면 항목 목록을 보여주는 다른 목록보기 조각이 나타납니다.나란히 태블릿에 조각

앱이 태블릿에서 실행 중일 때 목록의 왼쪽에 표시되도록하려하지만 어려움에 처해 있습니다.

현재 조각을 관리하는 활동이 하나 있습니다.

나는 StackOverflow에서 찾은 해결책을 시도했지만 효과가 없습니다. 여기

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/myFragment" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="horizontal" > 

<ViewGroup 
    android:id="@+id/leftContainer" 
    android:layout_width="0dp" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" /> 

<ViewGroup 
    android:id="@+id/rightContainer" 
    android:layout_width="0dp" 
    android:layout_height="fill_parent" 
    android:layout_weight="2" /> 

</LinearLayout> 

이 활동에 대한에서 onCreate 코드 : 여기서

모두 크고 표준 레이아웃에 사용되는 레이아웃 XML이다 super.onCreate (savedInstanceState); setContentView (R.layout.activity_main);

FragmentManager fm = getSupportFragmentManager(); 
FragmentTransaction ft = fm.beginTransaction(); 

ft.add(R.id.leftContainer, loadRoutesFragment); 
ft.add(R.id.rightContainer, viewModeFragment); 
ft.hide(loadRoutesFragment); 
ft.commit(); 

는 I로 시작하는 loadRoutesFragment을 숨길 수 있지만, 버튼을 누를 때 나는 조각을 표시해야 표시 방법을 사용합니다.

01-24 23:25:56.889: E/AndroidRuntime(20746): FATAL EXCEPTION: main 
01-24 23:25:56.889: E/AndroidRuntime(20746): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.srose.cyclopathed/com.srose.cyclopathed.MainActivity}: android.view.InflateException: Binary XML file line #7: Error inflating class android.view.ViewGroup 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.app.ActivityThread.access$600(ActivityThread.java:141) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.os.Handler.dispatchMessage(Handler.java:99) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.os.Looper.loop(Looper.java:137) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.app.ActivityThread.main(ActivityThread.java:5039) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at java.lang.reflect.Method.invokeNative(Native Method) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at java.lang.reflect.Method.invoke(Method.java:511) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at dalvik.system.NativeStart.main(Native Method) 
01-24 23:25:56.889: E/AndroidRuntime(20746): Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class android.view.ViewGroup 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.createView(LayoutInflater.java:613) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.onCreateView(LayoutInflater.java:643) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:66) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:270) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at com.actionbarsherlock.internal.ActionBarSherlockNative.setContentView(ActionBarSherlockNative.java:119) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at com.actionbarsherlock.app.SherlockFragmentActivity.setContentView(SherlockFragmentActivity.java:262) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at com.srose.cyclopathed.MainActivity.onCreate(MainActivity.java:90) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.app.Activity.performCreate(Activity.java:5104) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144) 
01-24 23:25:56.889: E/AndroidRuntime(20746): ... 11 more 
01-24 23:25:56.889: E/AndroidRuntime(20746): Caused by: java.lang.InstantiationException: can't instantiate class android.view.ViewGroup 
01-24 23:25:56.889: E/AndroidRuntime(20746): at java.lang.reflect.Constructor.constructNative(Native Method) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at java.lang.reflect.Constructor.newInstance(Constructor.java:417) 
01-24 23:25:56.889: E/AndroidRuntime(20746): at android.view.LayoutInflater.createView(LayoutInflater.java:587) 
01-24 23:25:56.889: E/AndroidRuntime(20746): ... 26 more 

사람이 왜 어떤 생각을 가지고 여기 setContentView(R.layout.activity_main);

응용 충돌은 예외?

감사

현재 XML :

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:id="@+id/myFragment" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="horizontal" > 

<fragment 
    android:id="@+id/leftContainer" 
    android:layout_width="0dp" 
    android:layout_height="fill_parent" 
    android:layout_weight="1" /> 

<fragment 
    android:id="@+id/rightContainer" 
    android:layout_width="0dp" 
    android:layout_height="fill_parent" 
    android:layout_weight="2" /> 

</LinearLayout> 

답변

0

로그 캣 읽기 : 당신이 당신의 레이아웃에서 일반 뷰 그룹을 생성 할 수 없음을 의미

Caused by: java.lang.InstantiationException: can't instantiate class android.view.ViewGroup 

. 일반적인 대안은 name 속성의 클래스에 <fragment /> 요소를 사용하거나 FrameLayout 또는 LinearLayout과 같은 특정 ViewGroup을 사용할 수 있습니다. 개발자 가이드 fragments에 몇 가지 예가 있습니다.

+0

답장을 보내 주셔서 감사합니다. ViewGroup을 동일한 매개 변수를 유지하는 조각으로 변경했습니다. 그것은 개발자 가이드 예제와 동일하지만 클래스 조각을 부 풀릴 수 없다는 것을 제외하면 같은 문제가 계속 발생합니다. – sam

+0

질문에 현재 XML을 추가하십시오. – Sam

+0

ActionBarSherlocks SherlockFragment를 사용하고 있습니다. 그것이 문제의 원인이 될 수 있습니까? – sam