0

これは私が得るエラーです:

05-08 12:50:56.976: E/AndroidRuntime(1018): java.lang.NoClassDefFoundError:
nl.h.energy.android.userinterface.FragmentEnergyUsage

ブレークポイントを使用しましたが、エラーはこの行にあると判断しました

1   bar.addTab(bar.newTab()
2     .setText("energy usage")
3     .setTabListener( 
4     new nl.h.energy.android.helper.TabListener
5      <nl.h.energy.android.userinterface.FragmentEnergyUsage>
6       (this,"energyUsage",  
7        nl.h.energy.android.userinterface.FragmentEnergyUsage.class)));

エラーは6/7行目で発生します。十分な情報を提供できれば幸いです。これらのクラスは私が自分で書いたクラスなので、これらのクラスをインポートする必要があることや、Androidにこれらのクラスがないことは問題ありません。

TabListenerは次のようになります:http ://developer.android.com/reference/android/app/ActionBar.html#newTab ()

FragementEnergyUsageクラスは次のようになります。

package nl.h.energy.android..userinterface;

import nl.h.energy.userinterface.R;
import android.os.Bundle;
import android.app.Fragment;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;


public class FragmentEnergyUsage extends Fragment {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        Log.e("Test", "hello");
    }

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

    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.energy_usage, container, false);
        return view;
    }

    public void setText(String item) {
        TextView view = (TextView) getView().findViewById(R.id.detailsText);
        view.setText(item);
    }
}
4

2 に答える 2

1

この回答を参照してください

マニフェスト ファイルにすべてのアクティビティ クラスが登録されているかどうかも確認してください。

于 2012-05-08T13:42:01.550 に答える
0

私は

 java.lang.NoClassDefFoundError: com.android.example.SupportFragment
    at com.android.example.SupportFragmentActivity.onCreate()

の上

SupportFragment extends SherlockFragment implements PopupMenu.OnMenuItemClickListener
...
    @Override
    public boolean onMenuItemClick(android.view.MenuItem item) {
        return onOptionsItemSelected(item);
    }

API 17 アプリを API 8 と互換性を持たせようとすると、上記の logcat エラーだけが表示されるため、このエラーが発生した場合は、インポートされたすべてのクラスがサポートされていることを確認してください。

于 2013-03-22T11:50:59.313 に答える