Таким образом, у меня есть почти та же самая проблема, описанная здесь:
http://code.google.com/p/android/issues/detail?id=6191
и до тех пор, пока проблема ViewFlipper в 2.1 и 2.2 не будет решена, я пытаюсь настроить свой собственный 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();
}
}
}
main.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
Я ценю любые предложения. Я часами гонялся за хвостом, пытаясь выяснить, какую часть головоломки мне не хватает.