Исключение во время выполнения: невозможно создать экземпляр информации о компоненте активности - PullRequest
2 голосов
/ 06 февраля 2011

Я только что удалил api медиалитики из своего приложения, потому что нашел это пустой тратой времени и большей проблемой, чем все остальное.

Проблема в том, что теперь мое приложение аварийно завершает работу при запуске вышеуказанного сообщения в журнале

Вот исходный код моей основной деятельности

public abstract class Converter extends Activity {
    private ListView lv1;
    private String lv_arr[] = {"Area", "Density", "Distance", "Energy",
            "Pressure", "Temperature", "Velocity", "Volume", "Weight"};

    @Override
    public void onCreate(Bundle savedInstanceState) { 
        super.onCreate(savedInstanceState); 
        setContentView(R.layout.main);

        AdView adView = (AdView)findViewById(R.id.ad);
        adView.requestFreshAd();

        AdManager.setTestDevices( new String[] {
            AdManager.TEST_EMULATOR,
                "E83D20734F72FB3108F104ABC0FFC738", 
        } );


        lv1 = (ListView)findViewById(R.id.MainList);
        lv1.setAdapter(new ArrayAdapter<String>(
            this, android.R.layout.simple_list_item_1, v_arr));
            lv1.setOnItemClickListener(new OnItemClickListener(){
            @Override
            public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                    long arg3) {

                if ("Area".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this, Area.class);
                    startActivity(i);

                }if ("Density".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this,Density.class);
                    startActivity(i);

                }if ("Distance".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this,Distance.class);
                    startActivity(i);

                }if ("Energy".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this,Energy.class);
                    startActivity(i);     

                }if ("Pressure".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this,Pressure.class);
                    startActivity(i);

                }if ("Temperature".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this,Temperature2.class);
                    startActivity(i);

                }if ("Velocity".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this,Velocity.class);
                    startActivity(i);

                }if ("Volume".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this,Volume.class);
                    startActivity(i);

                }if ("Weight".equals(lv_arr[arg2])){
                    Intent i = new Intent(Converter.this,Weight.class);
                    startActivity(i);
                }
            }
        });
    }
}

А вот макет XML

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:myapp="http://schemas.android.com/apk/res/app.android.converter"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <com.admob.android.ads.AdView
        android:id="@+id/ad"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        myapp:backgroundColor="#000000"
        myapp:primaryTextColor="#FFFFFF"
        myapp:secondaryTextColor="#CCCCCC" />
    <TextView android:id="@+id/MenuText" 
        android:text="Pick a Category to Begin" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_centerHorizontal="true" 
        android:layout_below="@id/ad"
        android:textStyle="bold" /> 
    <ListView
        android:id="@+id/MainList"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/MenuText" />
</RelativeLayout>

Может ли кто-нибудь определить проблему, потому что я не могу за свою жизнь.

Ответы [ 2 ]

2 голосов
/ 06 февраля 2011

Во-первых, очень плохо, чтобы ListView имел android:layout_height="wrap_content".Это заставит ListView измерить каждого ребенка.

Во-вторых, проверьте свой AndroidManifest.Из вашего кода вы должны иметь в своем манифесте несколько действий.

"Area", "Density", "Distance", "Energy", "Pressure", "Temperature", "Velocity", "Volume", "Weight".

1 голос
/ 06 февраля 2011

извините. действительно очень глупая ошибка

у меня было

public abstract class

вместо

public class

извините = (

...