gpt4 book ai didi

android - PageTabStrip 类未找到异常

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:16:35 25 4
gpt4 key购买 nike

好吧,我决定只使用 pagertitlestrip。我假设我使用的支持库不包含 pagertabstrip。我不确定如何解决这个问题,因为我认为我已经正确更新了所有内容。编辑:这不再存在了吗?当我将 PagerTabStrip 更改为 PagerTitleStrip 时,一切正常,但我无法与预期的标题进行交互,因为这就是我想使用 PagerTabStrip 的原因。

我已经回到基础来寻找问题的根源。我开始了一个导入 ABS 的新项目。我设置了一个非常简单的 pagerAdapter 和一个简单的 fragment 。我使用了一本通用书籍中的示例,但我仍然遇到同样的错误。未找到类异常。找不到 PagerTabStrip。发布的堆栈每次都会出现相同的错误。如果我删除 PagerTabStrip 然后一切正常。

xml

<android.support.v4.view.ViewPager xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/pager"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<android.support.v4.view.PagerTabStrip
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="top" />

</android.support.v4.view.ViewPager>

主要 Activity

package com.example.pagetabswipe;

import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.view.Menu;

import com.actionbarsherlock.app.SherlockFragmentActivity;

public class MainActivity extends SherlockFragmentActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

ViewPager pager = (ViewPager)findViewById(R.id.pager);
pager.setAdapter(new SampleAdapter(getSupportFragmentManager(), this));
}
}

适配器

package com.example.pagetabswipe;

import android.content.Context;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;

public class SampleAdapter extends FragmentPagerAdapter {
Context ctxt=null;
public SampleAdapter(FragmentManager fm, Context ctxt) {
super(fm);
this.ctxt=ctxt;
// TODO Auto-generated constructor stub
}

@Override
public Fragment getItem(int position) {
return (EditorFragment.newInstance(position));
}

@Override
public int getCount() {
// TODO Auto-generated method stub
return 10;
}
@Override
public String getPageTitle(int position) {
return(EditorFragment.getTitle(ctxt, position));
}
}

fragment

package com.example.pagetabswipe;

import android.content.Context;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import com.actionbarsherlock.app.SherlockFragment;

public class EditorFragment extends SherlockFragment {
private static final String KEY_POSITION = "position";

static EditorFragment newInstance(int position) {
EditorFragment frag = new EditorFragment();
Bundle args = new Bundle();
args.putInt(KEY_POSITION, position);
frag.setArguments(args);
return (frag);
}

static String getTitle(Context ctxt, int position) {
return (String.format(ctxt.getString(R.string.hint), position + 1));
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View result = inflater.inflate(R.layout.editor, container, false);
EditText editor = (EditText) result.findViewById(R.id.editor);
int position = getArguments().getInt(KEY_POSITION, -1);
editor.setHint(getTitle(getActivity(), position));
return (result);
}
}

错误

11-24 18:01:25.630: E/AndroidRuntime(3505): FATAL EXCEPTION: main
11-24 18:01:25.630: E/AndroidRuntime(3505): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.pagetabswipe/com.example.pagetabswipe.MainActivity}: android.view.InflateException: Binary XML file line #6: Error inflating class android.support.v4.view.PagerTabStrip
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1696)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1716)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.app.ActivityThread.access$1500(ActivityThread.java:124)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:968)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.os.Handler.dispatchMessage(Handler.java:99)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.os.Looper.loop(Looper.java:130)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.app.ActivityThread.main(ActivityThread.java:3806)
11-24 18:01:25.630: E/AndroidRuntime(3505): at java.lang.reflect.Method.invokeNative(Native Method)
11-24 18:01:25.630: E/AndroidRuntime(3505): at java.lang.reflect.Method.invoke(Method.java:507)
11-24 18:01:25.630: E/AndroidRuntime(3505): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
11-24 18:01:25.630: E/AndroidRuntime(3505): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
11-24 18:01:25.630: E/AndroidRuntime(3505): at dalvik.system.NativeStart.main(Native Method)
11-24 18:01:25.630: E/AndroidRuntime(3505): Caused by: android.view.InflateException: Binary XML file line #6: Error inflating class android.support.v4.view.PagerTabStrip
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:581)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.view.LayoutInflater.rInflate(LayoutInflater.java:623)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.view.LayoutInflater.inflate(LayoutInflater.java:408)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
11-24 18:01:25.630: E/AndroidRuntime(3505): at com.actionbarsherlock.internal.ActionBarSherlockCompat.setContentView(ActionBarSherlockCompat.java:853)
11-24 18:01:25.630: E/AndroidRuntime(3505): at com.actionbarsherlock.app.SherlockFragmentActivity.setContentView(SherlockFragmentActivity.java:262)
11-24 18:01:25.630: E/AndroidRuntime(3505): at com.example.pagetabswipe.MainActivity.onCreate(MainActivity.java:14)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1660)
11-24 18:01:25.630: E/AndroidRuntime(3505): ... 11 more
11-24 18:01:25.630: E/AndroidRuntime(3505): Caused by: java.lang.ClassNotFoundException: android.support.v4.view.PagerTabStrip in loader dalvik.system.PathClassLoader[/data/app/com.example.pagetabswipe-2.apk]
11-24 18:01:25.630: E/AndroidRuntime(3505): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
11-24 18:01:25.630: E/AndroidRuntime(3505): at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
11-24 18:01:25.630: E/AndroidRuntime(3505): at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.view.LayoutInflater.createView(LayoutInflater.java:471)
11-24 18:01:25.630: E/AndroidRuntime(3505): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:570)
11-24 18:01:25.630: E/AndroidRuntime(3505): ... 20 more

任何帮助都会很棒。我不确定去哪里解决这个问题。我觉得我错过了一些非常基本的东西,这些东西阻止了在支持库中找到 PagerTabStrip。

最佳答案

对我来说,这最终是由于底层 actionbarsherlock 库具有旧版本的支持库。

在 eclipse 中,我从 actionbarsherlock 库项目的构建路径中删除了 android 支持库。

然后我听从了这里的建议,PagerTabStrip cannot be resolved to a type ,

Right Click on you project..

click on "Android Tools" -> "Add Support Library"

after that it will download the android-support.jar. and add it to your project.

after that your eclipse will recognize PagerTabStrip

关于android - PageTabStrip 类未找到异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13547656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com