0

もちろん、私の場合は特にイメージボタンのボタンがたくさんある電卓アプリを作成しています。アプリは 2.3 で動作しますが、4.0 では問題が発生します。問題は、次のビューを表示している ViewFlipper で NullPointerException が発生することです。

phhistbnt.setOnClickListener(new View.OnClickListener() 
{
    @Override
    public void onClick(View v) 
    {
    try
    {
        vib.vibrate(30);

        if(animChoice == 0)
            vf1.showNext(); // issue here and most likely the rest of them
        else if(animChoice == 1)
        {
            vf1.setOutAnimation(topUp);
            vf1.showNext();
            vf1.setInAnimation(Fl);
        }
        else if(animChoice == 2)
        {
            vf1.setOutAnimation(fadeOut2);
            vf1.showNext();
            vf1.setInAnimation(hy);
        }
    }
    catch(Exception e)
    {
        e.printStackTrace();
    }
}
});

LogCat は次のとおりです。

08-18 21:55:29.301: W/System.err(6141): java.lang.NullPointerException
08-18 21:55:29.301: W/System.err(6141):     at
f7Calc.com.KidzCalcActivity$12.onClick(CalcActivity.java:751)    
08-18 21:55:29.301: W/System.err(6141): at 
android.view.View.performClick(View.java:3549)
08-18 21:55:29.301: W/System.err(6141): at      
android.view.View$PerformClick.run(View.java:14393)
08-18 21:55:29.311: W/System.err(6141):     at     
android.os.Handler.handleCallback(Handler.java:605)
08-18 21:55:29.311: W/System.err(6141):     at  
android.os.Handler.dispatchMessage(Handler.java:92)
08-18 21:55:29.311: W/System.err(6141):     at android.os.Looper.loop(Looper.java:154)
08-18 21:55:29.311: W/System.err(6141):     at  
android.app.ActivityThread.main(ActivityThread.java:4945)
08-18 21:55:29.311: W/System.err(6141):     at   
java.lang.reflect.Method.invokeNative(Native Method)
08-18 21:55:29.311: W/System.err(6141):     at  
java.lang.reflect.Method.invoke(Method.java:511)
08-18 21:55:29.311: W/System.err(6141):     at   
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
08-18 21:55:29.311: W/System.err(6141):     at 
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
08-18 21:55:29.311: W/System.err(6141):     at dalvik.system.NativeStart.main(Native   
Method)   

エミュレーターでは、Logcat に次のように表示されます。

08-18 22:19:25.144: I/Choreographer(1290): Skipped 67 frames!  The application may be   
doing too much work on its main thread.

しかし、それは通常どおり動作し続けます。AsyncTask を使い始めましたが、使い方がわかりません。どんな助けでも大歓迎です。

4

1 に答える 1

0

私はポールの助けを借りてそれを理解します。ICE 4.0.xにアップグレードする前は、画面サイズのレイアウトがなかったため、解像度が960x540の画面サイズのボタンのサイズをコードで変更する必要がありました。どうやら私が自分の電話をICE(Evo 3D)にアップグレードしたとき、ICEは何も使わずに960x540のlayout-sw360dpレイアウトを使用しているようです。それをレイアウトのリストに追加し、アクティビティに必要な修正済みIDを入力すると、wallaが機能します。

于 2012-08-21T17:02:00.643 に答える