2011-07-25 4 views
0

J'ai un pépin très bizarre que je ne peux pas comprendre. Toute aide sera appréciée car cela fonctionne sur un téléphone fonctionnant sous Android 2.3, tablette fonctionnant sous 3.1 mais pas sur un téléphone sous Android 2.1.Android findViewById Travailler Parfois

J'essaye d'obtenir le LinearLayout défini dans le XML suivant avec l'ID de "overview_linear_layout".

overview_view.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 
    <include layout="@layout/listing_view" android:layout_width="fill_parent" android:id="@+id/header_view" android:layout_height="wrap_content"></include> 
    <ScrollView android:id="@+id/scrollView1" android:layout_weight="1" android:layout_width="fill_parent" android:layout_height="wrap_content"> 
     <LinearLayout android:layout_width="fill_parent" android:orientation="vertical" android:layout_height="fill_parent" android:id="@+id/overview_linear_layout"> 
      <TextView android:scrollbars="vertical" android:longClickable="false" android:layout_weight="1" android:clickable="false" android:layout_width="fill_parent" android:layout_height="wrap_content" android:id="@+id/main_description"></TextView> 
     </LinearLayout> 
    </ScrollView> 
    <include layout="@layout/listing_view" android:layout_width="fill_parent" android:id="@+id/footer_view" android:layout_height="wrap_content" android:layout_weight="0.0"></include> 

</LinearLayout> 

Le code que je utilise pour obtenir le point de vue est le suivant:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    setContentView(R.layout.overview_view); 
    LinearLayout linearLayout = (LinearLayout)findViewById(R.id.overview_linear_layout); 

    if(linearLayout!=null) { 
     System.out.println("Found linear layout"); 
    } 
    else { 
     System.out.println("Did not find linear layout"); 
    } 
} 

J'ai essayé Projet-> Clean dans Eclipse, mais cela ne suffit pas non plus.

+0

publiez votre déclaration d'importation. –

Répondre

0

changer cette

LinearLayout linearLayout = (LinearLayout)findViewById(R.id.overview_linear_layout); 

à

LinearLayout linearLayout = (LinearLayout)findViewById(R.layout.overview_linear_layout);` 
0

si éclipse ne montre pas overview_linear_layout lorsque vous tapez cliquez sur la croix rouge et cliquez sur créer overview_linear_layout constante dans R.