У меня есть три вкладки, которые я хочу использовать, чтобы использовать мои три веб-просмотра для отображения определенных доменов. Все сборки находят, но когда я пытаюсь запустить приложение, оно принудительно закрывается, когда я его запускаю, и если я его отлаживаю - оно остается открытым с макетом и представлениями (в основном оно ничего не делает при отладке).
логарифм говорит
Не удалось запустить активность ComponentInfo{com.company.client/com.company.client.MainActivity}: java.lang.IllegalStateException: вы забыли вызвать «public void setup (LocalActivityManager ActivityGroup)»?**
Как мне это назвать?
Вот мой код:
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.widget.TabHost;
import android.widget.TabHost.TabSpec;
public class MainActivity extends Activity {
TabHost th;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
th = (TabHost) findViewById(R.id.tabhost);
th.setup();
TabSpec firstSpec=th.newTabSpec("Classes & Events");
firstSpec.setIndicator("Classes & Events", null);
Intent firstIntent= new Intent(this, WebViewActivity.class);
firstIntent.putExtra("backswipe", false);
firstSpec.setContent(firstIntent);
th.addTab(firstSpec);
TabSpec secondSpec=th.newTabSpec("Twitter");
secondSpec.setIndicator("Twitter", null);
Intent secondIntent= new Intent(this, WebViewActivity2.class);
secondSpec.setContent(secondIntent);
th.addTab(secondSpec);
TabSpec thirdSpec=th.newTabSpec("Facebook");
thirdSpec.setIndicator("Facebook", null);
Intent thirdIntent= new Intent(this, WebViewActivity3.class);
thirdSpec.setContent(thirdIntent);
th.addTab(thirdSpec);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
код веб-просмотра
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.webkit.WebView;
public class WebViewActivity extends Activity {
public WebView webView_A;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
webView_A = (WebView) findViewById(R.id.tab1);
webView_A.getSettings().setJavaScriptEnabled(true);
webView_A.loadUrl("http://www.eventbrite.com");
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.web_view, menu);
return true;
}
}
XML основной макет
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFB84D" >
<LinearLayout
android:id="@+id/linearLayout1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="-3dip"
android:layout_weight="0" >
</TabWidget>
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_weight="1" >
</FrameLayout>
</LinearLayout>
</TabHost>
Вот логарифм.
Итак, как я могу активировать свои WebViewActivities на вкладках и делать то, что мне говорит logcat?
Первая ошибка, которую я заметил, это то, что вы пытаетесь установить содержимое после добавления вкладки: