0

所以我遇到了这里描述的问题:

http://code.google.com/p/android/issues/detail?id=6191

在 2.1 和 2.2 中的 ViewFlipper 问题得到解决之前,我正在尝试以所述方式自定义我自己的 ViewFlipper:

@Override
protected void onDetachedFromWindow() {
    try {
        super.onDetachedFromWindow();
    }
    catch (IllegalArgumentException e) {
        // Call stopFlipping() in order to kick off updateRunning()
        stopFlipping();
    }
}

但我以前从未做过这种事情,我希望能得到一些指导(因为我自己的努力不足)。

这是我到目前为止所拥有的。

FixedFlipper.java:

import android.content.Context;
import android.util.AttributeSet;
import android.widget.ViewFlipper;

public class FixedFlipper extends ViewFlipper{
public FixedFlipper(Context context){
    super(context);
}

public FixedFlipper(Context context, AttributeSet attrs){
    super(context, attrs);
}

@Override
protected void onDetachedFromWindow(){
    try{
        super.onDetachedFromWindow();
    }catch(Exception e){
        super.stopFlipping();
    }
}
}

主.xml:

<com.site.TestApp.FixedFlipper 
    style="@style/body" android:id="@+id/flipper">
    ...
</com.site.TestApp.FixedFlipper>

在我的活动中,我像这样调用它:

FixedFlipper flipper = (FixedFlipper)findViewById(R.id.flipper);

看起来应该很简单,但我不断得到这个:

Binary XML file line #4: Error inflating class com.site.TestApp.FixedFlipper

我很感激任何建议。几个小时以来,我一直在追赶我的尾巴,试图弄清楚我错过了哪一块拼图。

4

1 回答 1

0

尝试以这种方式更改 yuor main.xml:

<view
  class="com.site.TestApp.FixedFlipper"
  style="@style/body" 
  android:id="@+id/flipper"
    ...
</view>
于 2010-06-13T22:59:41.997 回答