1

我下面的Android Programming: The Big Nerd Ranch Guide並沒有使用ViewPager通過2檔爲例充氣ViewPager:從XML佈局

文件res/values/ids.xml定義XML的ID:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <item type="id" name="viewPager" /> 
</resources> 

和Java源文件CrimePagerActivity.java使用該ID:

public class CrimePagerActivity extends FragmentActivity { 
    private ViewPager mViewPager; 

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

     mViewPager = new ViewPager(this); 
     mViewPager.setId(R.id.viewPager); 
     setContentView(mViewPager); 

我曾試圖改變的例子有ViewPager對象從XML佈局文件被誇大RES /佈局/ crime_pager.xml(而不是隻用一個id的):

<?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" > 

    <ViewPager 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:id="@+id/view_pager" /> 

</LinearLayout> 

然後我試圖使用該對象在CrimePagerActivity.java

public class CrimePagerActivity extends FragmentActivity { 
    private ViewPager mViewPager; 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.crime_pager); 
     mViewPager = (ViewPager)findViewById(R.id.view_pager); 

不幸的是,這並不工作,並未能與RuntimeException和一點信息(這裏fullscreen):

Eclipse screenshot

請問這裏有什麼問題?

+0

後堆棧跟蹤,請! – mmlooloo 2014-10-02 13:27:36

+0

正如你可以在屏幕截圖中看到的 - 沒有堆棧跟蹤 – 2014-10-02 13:29:27

+0

,你可以看到它說設備斷開連接:-)。正確連接並運行它,然後複製並粘貼logcat並將其放入您的問題中。 – mmlooloo 2014-10-02 13:31:33

回答

2

變化:

<ViewPager 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:id="@+id/view_pager" /> 

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