Переделываю проектс ActionBarActivity c PageView в просто TabHost.
Пишет ошибку при открытии класса Таба.
Error - Caused by: java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.tabhost/com.example.tabhost.Tab1}: java.lang.ClassCastException: com.example.tabhost.Tab1
Плз, хелп.
MainActivity.java
[syntax=java5]...
@SuppressWarnings("deprecation")
public class MainActivity extends TabActivity {
...
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
...
Resources res = getResources(); // Resource object to get Drawables
TabHost tabHost = getTabHost(); // The activity TabHost
TabHost.TabSpec spec; // Reusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
// Create an Intent to launch an Activity for the tab (to be reused)
intent = new Intent().setClass(this, Tab1.class);
spec = tabHost.newTabSpec("home")
.setIndicator("HOME", res.getDrawable(R.drawable.ic_tab1_1))
.setContent(intent);
tabHost.addTab(spec); <<<<<<<<<<<<<<<< ERROR <<<<<<<<<<<<<<<<<<<<
...
// set tab which one you want open first time 0 or 1 or 2
//tabHost.setCurrentTab(0);
...
[/syntax]
Tab1.java
[syntax=java5]...
public class Tab1 extends Fragment {
ListView list;
LazyAdapter adapter;
ArrayList<HashMap<String, String>> itemList = new ArrayList<HashMap<String, String>>();
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Document doc = MainActivity.parser.getDomElement(MainActivity.xml);
NodeList nl = doc.getElementsByTagName("tab1");
...
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.tab1, container, false);
list = (ListView) rootView.findViewById(R.id.list);
// Click event for single list row
list.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
@SuppressWarnings("unchecked")
String sss = ((Map<String, String>) adapter.getItem(position))
.get(MainActivity.KEY_LINK);
Log.d("myLogs", sss);
Uri address = Uri.parse(sss);
Intent openlink = new Intent(Intent.ACTION_VIEW, address);
startActivity(openlink);
}
});
return rootView;
}[/syntax]
Не могу открыть class в проекте с TabHost
Не могу открыть class в проекте с TabHost
Тут должна быть подпись.
Re: Не могу открыть class в проекте с TabHost
Вместо Fragment тебе нужен FragmentActivity или Activity,что бы указать их в манифесте, на 99% уверен,что ексепшен по поводу отсутствия описания окна в манифесте
Re: Не могу открыть class в проекте с TabHost
советую обратить внимание на http://startandroid.ru/ru/uroki/vse-uro ... pisok.html
из забыть про TabActivity.
из забыть про TabActivity.
Re: Не могу открыть class в проекте с TabHost
Вообще запутался... Сделал табы с ActionBar и ViewPager-ом (всё работало), оказалось что в ViewPager нельзя вставить AdMob блок вниз (или можно ?)... Как сделать что бы табы были Fragment ?
Так что бы этот рабочий проект изменить.
Переделываю проект с ActionBar и PageView на что-то во что можно AdMob вставить....
Каша в голове ппц.
Есть Табы (Fragment) есть TabsPagerAdapter (FragmentPagerAdapter), ну и маинактивити.
Скажите как можно переделать проект ? Какая схема ?
Я думаю, что можно просто убрать ViewPager и всё должно работать. Хелп, плз. Три дня голова кипит.
Так что бы этот рабочий проект изменить.
Переделываю проект с ActionBar и PageView на что-то во что можно AdMob вставить....
Каша в голове ппц.
Есть Табы (Fragment) есть TabsPagerAdapter (FragmentPagerAdapter), ну и маинактивити.
Скажите как можно переделать проект ? Какая схема ?
Я думаю, что можно просто убрать ViewPager и всё должно работать. Хелп, плз. Три дня голова кипит.
Тут должна быть подпись.
Re: Не могу открыть class в проекте с TabHost
ActionBar с API 11 или это уже сейчас не критично ?
klblk писал(а):советую обратить внимание на http://startandroid.ru/ru/uroki/vse-uro ... pisok.html
из забыть про TabActivity.
Тут должна быть подпись.
Re: Не могу открыть class в проекте с TabHost
https://developer.android.com/intl/ru/a ... index.html
17% устройств критично? решать вам. (с каждым следующем месяцем процент будет только уменьшаться, я считаю что новые приложения можно спокойно делать api 14+).
ну и можно использовать для совместимости SherlockActionBar или android-support-v7-appcompat.
по поводу AdMod можете попробовать разместить баннер поверх ViewPager'а (используя FrameLayout). Либо, кто-то предлагал, вывести ViewPager в отдельный фрагмент, не пробовал, но кажется должно сработать. Еще вариант можно попробовать сделать кастомный ViewPager (по умолчанию у он игнорирует атрибут "android:layout_height" и всегда используется "match_parent", поправьте если ошибаюсь).
17% устройств критично? решать вам. (с каждым следующем месяцем процент будет только уменьшаться, я считаю что новые приложения можно спокойно делать api 14+).
ну и можно использовать для совместимости SherlockActionBar или android-support-v7-appcompat.
по поводу AdMod можете попробовать разместить баннер поверх ViewPager'а (используя FrameLayout). Либо, кто-то предлагал, вывести ViewPager в отдельный фрагмент, не пробовал, но кажется должно сработать. Еще вариант можно попробовать сделать кастомный ViewPager (по умолчанию у он игнорирует атрибут "android:layout_height" и всегда используется "match_parent", поправьте если ошибаюсь).