2012-09-14 26 views
1

美好的一天。我嘗試使用地圖視圖和列表視圖創建活動。我所做的這個佈局Android應用中終結器引發的未捕獲異常

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_weight="2.81" 
    android:orientation="vertical" > 


    <CalendarView 
     android:id="@+id/calendar" 

     android:layout_width="360dp" 
     android:layout_height="234dp" /> 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Список точек по маршруту" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 

    <ListView 
     android:id="@+id/listViewPoints" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:choiceMode="multipleChoice" > 
    </ListView> 

</LinearLayout> 

<LinearLayout 
    android:layout_width="0dp" 
    android:layout_height="match_parent" 
    android:layout_weight="1" 

    android:orientation="vertical" > 


    <com.google.android.maps.MapView 
     android:id="@+id/mapView" 
     android:layout_width="604dp" 
     android:layout_height="match_parent" 
     android:layout_above="@+id/linearLayout1" 
     android:layout_below="@+id/editText" 
     android:apiKey="0FLRiHvfPXL2mqzQihPemczCJMUjk3TTD8umAPw" 
     android:clickable="true" 
     android:enabled="true" /> 

</LinearLayout> 

public class EnrouteActivity extends MapActivity { 

    private ListView pointsListView; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.enroute_work_layout); 
     this.pointsListView = (ListView)findViewById(R.id.listViewPoints); 

     String[] items = new String[] {"Пункт А", "Пункт Б", "Пункт В"}; 
     //String[] items = this.GetAdapter(); 
     ArrayAdapter<String> adapter = 
        new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, items); 
     this.pointsListView.setAdapter(adapter); 
     this.pointsListView.setItemsCanFocus(false); 
     this.pointsListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 

    } 

    @Override 
    protected boolean isRouteDisplayed() { 
     // TODO Auto-generated method stub 
     return false; 
    } 

    private String[] GetAdapter(){ 

     Routes routes = new Routes(); 
     String[] items = new String[routes.points.size()]; 
     for(int i = 0; i<routes.points.size(); i++){ 
      items[i] = routes.points.get(i).name; 
     } 
     return items; 


    } 

一部分,這裏是例外

09-14 13:39:02.331: E/MapActivity(9606): Couldn't get connection factory client 
09-14 13:39:02.464: D/dalvikvm(9606): GC_CONCURRENT freed 783K, 6% free 15328K/16199K, paused 2ms+3ms 
09-14 13:39:02.464: E/System(9606): Uncaught exception thrown by finalizer 
09-14 13:39:02.464: E/System(9606): java.lang.IllegalStateException: Binder has been finalized! 
09-14 13:39:02.464: E/System(9606):  at android.os.BinderProxy.transact(Native Method) 
09-14 13:39:02.464: E/System(9606):  at android.database.BulkCursorProxy.close(BulkCursorNative.java:288) 
09-14 13:39:02.464: E/System(9606):  at android.database.BulkCursorToCursorAdaptor.close(BulkCursorToCursorAdaptor.java:133) 
09-14 13:39:02.464: E/System(9606):  at android.database.CursorWrapper.close(CursorWrapper.java:49) 
09-14 13:39:02.464: E/System(9606):  at android.content.ContentResolver$CursorWrapperInner.close(ContentResolver.java:1591) 
09-14 13:39:02.464: E/System(9606):  at android.content.ContentResolver$CursorWrapperInner.finalize(ContentResolver.java:1604) 
09-14 13:39:02.464: E/System(9606):  at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:182) 
09-14 13:39:02.464: E/System(9606):  at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:168) 
09-14 13:39:02.464: E/System(9606):  at java.lang.Thread.run(Thread.java:856) 

我發現this的話題,但我一直搞不明白,約coursor他們說什麼=((

+0

http://stackoverflow.com/questions/7265793/android-list-view-with-simplecursor-adapter-crashes-application-no-anr-shown – assylias

回答

0
09-14 13:39:02.464: E/System(9606): java.lang.IllegalStateException: Binder has been finalized 
android.database.BulkCursorToCursorAdaptor.close(BulkCursorToCursorAdaptor.java:133) 

看起來您的光標適配器在提交到列表視圖之前關閉。仔細查看任何close()調用代碼。

+0

有沒有接近()運算符的任何地方。可能有解決方案從代碼打開它?這個coursor是什麼意思?它是什麼? – nabiullinas

1
 Make sure that you are using proper "MD5 Fingerprint" of your current system 
     where you are developing app. Have look at below link, 

     https://developers.google.com/maps/documentation/android/v1/mapkey 
相關問題