2012-10-29 39 views
0

爲什麼xml佈局不起作用?當我打開佈局頁面時出現錯誤消息,請幫助我,問題是什麼,我不明白,有什麼想法?謝謝你的回答...爲什麼xml佈局頁面不起作用

我的xml佈局代碼;

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" > 

<android.support.v4.view.ViewPager 
    android:id="@+id/myfivepanelpager" 
    android:layout_width="match_parent" 
    android:layout_height="440dp" > 
</android.support.v4.view.ViewPager> 

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="46dp" 
    android:background="@drawable/bck2" > 

    <Button 
     android:id="@+id/buttonprevious" 
     android:layout_width="62dp" 
     android:layout_height="match_parent" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:background="@drawable/lefticon" /> 

    <Button 
     android:id="@+id/buttonnext" 
     android:layout_width="62dp" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" 
     android:background="@drawable/righticon" /> 
</RelativeLayout> 

</LinearLayout> 

Logcat錯誤信息;

10-29 16:26:13.422: E/AndroidRuntime(2187): FATAL EXCEPTION: main 
10-29 16:26:13.422: E/AndroidRuntime(2187): java.lang.RuntimeException: Unable to start  activity ComponentInfo{com.hayvansesleri/com.hayvansesleri.Pictures}:  java.lang.ClassCastException: android.widget.Button cannot be cast to  android.support.v4.view.ViewPager 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1967) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1992) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.app.ActivityThread.access$600(ActivityThread.java:127) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1158) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.os.Handler.dispatchMessage(Handler.java:99) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.os.Looper.loop(Looper.java:137) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.app.ActivityThread.main(ActivityThread.java:4441) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at java.lang.reflect.Method.invokeNative(Native Method) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at java.lang.reflect.Method.invoke(Method.java:511) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at dalvik.system.NativeStart.main(Native Method) 
10-29 16:26:13.422: E/AndroidRuntime(2187): Caused by: java.lang.ClassCastException: android.widget.Button cannot be cast to android.support.v4.view.ViewPager 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at com.hayvansesleri.Pictures.onCreate(Pictures.java:38) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.app.Activity.performCreate(Activity.java:4465) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1931) 
10-29 16:26:13.422: E/AndroidRuntime(2187):  ... 11 more 

pictures.class;

public class Pictures extends Activity implements OnPageChangeListener,OnClickListener { 
protected static final Context Context = null; 

private static final int count = 23; 
private AdController myController; 
SoundManager snd; 

View view=null; 

final Activity act = this; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInsta,mknceState); 
    setContentView(R.layout.picturespage); 


MyPagerAdapter adapter = new MyPagerAdapter(); 
final ViewPager myPager = (ViewPager) findViewById(R.id.myfivepanelpager); 
myPager.setAdapter(adapter); 
myPager.setCurrentItem(12); 
myPager.setOnPageChangeListener(this); 
snd = new SoundManager(this); 
this.setVolumeControlStream(AudioManager.STREAM_MUSIC); 

Button next = (Button) findViewById(R.id.buttonnext); 
next.setOnClickListener(new View.OnClickListener(){ 

    public void onClick(View v) { 
     myPager.setCurrentItem(myPager.getCurrentItem()+1); 
    } 
}); 

Button previous = (Button) findViewById(R.id.buttonprevious); 
previous.setOnClickListener(new View.OnClickListener(){ 

    public void onClick(View v) { 
     myPager.setCurrentItem(myPager.getCurrentItem()-1); 
    } 
}); 
}; 
+0

請發佈logcat的錯誤消息 –

+2

清理您的項目! – juned

+0

我添加了logcat錯誤信息 –

回答

5

juned可能是正確的,嘗試運行«ant clean»在您的項目上。有時R.java變得過時了,沒有構建系統的注意。你可以例如在你的xml文件中交換Button和ViewPager的順序,但是R.id類中生成的id保持錯誤的順序。在«ant release»/«ant debug»之前的«ant clean»修復了這個問題。

相關問題