Articles of android viewpager

当包含片段被重新创build时,ViewPager中的片段不会被加载

我有一个包含更多Fragment的ViewPager的Fragment MyFragment。 它第一次加载MyFragment时正常工作,但如果我回去重新创build它, ViewPager中的Fragments不会显示,因为方法FragmentPagerAdapter.getItem没有被调用。 我在用着 怎么了? import android.app.Fragment; import android.app.FragmentManager; import android.support.v13.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; … public class MyFragment extends Fragment { private ViewPager pager; private MyPagerAdapter adapter; private List<Fragment> fragmentList = new ArrayList<Fragment>(); public MyFragment() {} @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.my_fragment_layout, container, false); } public void onViewCreated(View v, […]

如何自动滑动android查看页面

查看传呼机是否可以自动滑动或自动接收 我有我的viewpager设置使用像下面的适配器,它工作正常: – @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.gridslide); ImagePagerAdapter mAdapter = new ImagePagerAdapter( getSupportFragmentManager(),4); ViewPager mPager = (ViewPager) findViewById(R.id.pager); mPager.setAdapter(mAdapter); } 而适配器如下所示: – public static class ImagePagerAdapter extends FragmentStatePagerAdapter { private final int mSize; public ImagePagerAdapter(FragmentManager fm, int size) { super(fm); mSize = size; } @Override public int getCount() { return mSize; […]

IllegalArgumentException:半径必须> 0

我正在使用AChartEngine库在视图寻呼机中devise条形图和饼图。 当我从条形图滚动到饼图时,应用程序崩溃。 崩溃报告如下。 FATAL EXCEPTION: main java.lang.IllegalArgumentException: radius must be > 0 at android.graphics.RadialGradient.<init>(RadialGradient.java:58) at org.achartengine.chart.PieChart.draw(PieChart.java:112) at org.achartengine.GraphicalView.onDraw(GraphicalView.java:168) at android.view.View.draw(View.java:11120) at android.view.ViewGroup.drawChild(ViewGroup.java:2901) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2503) at android.view.ViewGroup.drawChild(ViewGroup.java:2899) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2503) at android.view.ViewGroup.drawChild(ViewGroup.java:2899) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2503) at android.view.View.draw(View.java:11123) at android.support.v4.view.ViewPager.draw(ViewPager.java:2157) at android.view.ViewGroup.drawChild(ViewGroup.java:2901) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2503) at android.view.ViewGroup.drawChild(ViewGroup.java:2899) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2503) at android.view.ViewGroup.drawChild(ViewGroup.java:2899) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2503) at android.view.ViewGroup.drawChild(ViewGroup.java:2899) at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2503) at android.view.ViewGroup.drawChild(ViewGroup.java:2899) at […]

有没有办法在毕加索加载一个默认的图像

我无法从我的drawable中加载一张图片,因为毕加索只知道resons,所以无法加载毕加索,我想加载一个默认图片,请帮助 @Override public Object instantiateItem(ViewGroup container, final int position) { final Context context =getApplicationContext(); final ImageView imageView = new ImageView(getApplicationContext()); int padding = context.getResources().getDimensionPixelSize( R.dimen.padding_medium); imageView.setPadding(padding, padding, padding, padding); PicassoTools.clearCache(Picasso.with(context)); ((ViewPager) container).addView(imageView, 0); imageView.setTag("myview" + position); Picasso.with(context).load(mImages[position]).resize(320,280).centerInside().placeholder(placeholderDrawable) .into(imageView,new Callback() { @Override public void onError() { // TODO Auto-generated method stub imageView.setImageResource(R.drawable.c3); } @Override public void […]

无法使用Ant构buildAndroid应用程序(请参阅ActionBarSherlock和ViewPagerTabs)

我有一个使用ActionBarSherlock&ViewPagerTabs的Android应用程序。 我使用Eclipse来编写和构build它,直到我尝试使用Ant构build它时,它才运行良好。 以下是我所做的: 进入ActionBarSherlock文件夹,运行“android update lib-project -path”。 进入ViewPagerTabs文件夹,运行“android update lib-project –path”。 太 去app文件夹,运行“android update project –path”。 运行“和debugging”下的应用程序文件夹,我有以下错误: : [javac] C:\Android\TestApp\src\com\test\App\TestActivity.java:46: cannot find symbol [javac] symbol : method getSupportActionBar() [javac] location: class com.test.App.TestActivity [javac] final ActionBar ab = getSupportActionBar(); [javac] ^ 所以问题没有。 1: 我在应用程序的project.properties中有正确的库引用,并且可以成功构buildActionBarSherlock&ViewPagerTabs,为什么仍然会得到这些错误? 这个问题有一个解决方法 – 将库bin文件夹下的所有classes.jar复制到应用程序的libs文件夹中,然后再次运行“ant debug”。 但是我需要删除应用程序的libs文件夹下的这些.jar文件,所有应用程序的.java文件都可以被编译。 之后再次运行“antdebugging”,我会得到以下错误: [dx] processing archive C:\Android\ActionBarSherlock\library\bin\classes.jar… [dx] ignored […]

为什么当我通过我的应用程序viewPager进行翻页时,我的片段onCreate被广泛地调用?

我不太了解这个片段生命周期业务。 我有一个相当标准的3页水平滑块视图的Pager布局我的应用程序的“查看详细信息”部分。 我开始我的应用程序的三个中间页面。 我的FragmentActivity将页面设置为第1页。 mPager.setCurrentItem(1); //default to center page, current data view fragment 我一直在使用FragmentStatePagerAdapter,因为使用FragmentPagerAdapter时有时会崩溃我的应用程序,例如从暂停状态返回时,这是现在解决此问题的最快方法。 似乎工作,但我怀疑国家方面可能是我的问题的原因可能在这里。 所以起初我以为我会让每个片段做一个从rest服务获取数据然后在列表中显示的工作,但我不太确定。 我试着运行一个独特的asynchronous任务来获取每个片段onCreateView事件中的数据。 然后,在阅读了关于片段生命周期的更多信息之后,我切换到了onCreate,注意到onCreateView被调用得相当厉害,反过来又使贪婪的应用程序太频繁地请求数据。 切换到onCreate并没有改变任何东西。 OnCreate仍然被称为与2个相邻片段的onCreateView一样多。 奇怪的是,我设置的片段是第一个在Fragment Activity中显示的片段,只有一次调用onCreate。 有什么感觉不对。 现在我想我应该有父片段活动声明,并调用所有的asynchronous任务来获取我需要显示在片段中的数据。 将asynchronous调用的结果设置为父级片段活动拥有的对象,然后让片断使用父级包含的对象来创build列表视图等。 但是,如果由父活动启动的asynchronous任务在每个片段onCreateView被调用之前没有完成,并且父对象包含的对象尚未准备好, 签署,困惑和沮丧

向ViewPager添加标题

我已经设置了可滑动标签的ViewPager,现在我想在页面顶部添加标题来指示正在显示的片段。 这是迄今为止的代码: activity_main.xml中 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <android.support.v4.view.ViewPager android:id="@+android:id/viewpager" android:layout_width="fill_parent" android:layout_height="fill_parent" /> </LinearLayout> MainActivity.java public class MainActivity extends FragmentActivity { private PagerAdapter mPagerAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setContentView(R.layout.activity_main); this.initialisePaging(); } private void initialisePaging() { List<Fragment> fragments = new Vector<Fragment>(); // Add fragments here fragments.add(Fragment.instantiate(this, PickerFragment.class.getName())); fragments.add(Fragment.instantiate(this, DisplayFragment.class.getName())); […]

viewpager选项卡中的我的片段不刷新

我有Viewpager与4个选项卡..在每个选项卡中有一个片段。 我的第一个选项卡是一个表单(例如用户),我点击保存后,数据插入到数据库中的片段。 我的第二个选项卡是另一个forms的片段,但它使用来自第一个选项卡(我从数据库中获取)的数据填充微调。 现在,我成功地从我的第一个标签插入数据后,在我的第二个标签中,微调框是空的。 因为我的数据库查询是在第二个片段中的onCreateView()中实现的,所以在应用程序启动时它只调用一次,所以在tab 1之间切换tab2不会启动onCreateView()甚至onResume()。 对我来说有趣的是,如果我去tab4,然后返回到tab2,我的数据是在我的微调正确,所以不知何故从我当前的标签刷新我的片段远离两个选项卡。 我的问题是我怎么才能实现适当的刷新我的片段时只调用一次onCreateView()? 编辑我试图把这种方法psykhibuild议像这样: this.mViewPager.setOffscreenPageLimit(0); this.mViewPager.setAdapter(this.mPagerAdapter); this.mViewPager.setOnPageChangeListener(this); 但它不适合我 我错过了什么?

MapView(android maps api v2)里面的片段布局不显示

我使用viewpager在2个操作栏选项卡(用于这种导航使用eclipse向导)之间滑动。 我正在使用android maps v2 api。 我想在我的一个标签(我猜mapfragment是不可能的)内的mapview,button和textview。 我膨胀我的片段的XML从这样的布局: public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.first_tab_fragment, container, false); } } 我的first_tab_fragment.xml: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" > <com.google.android.gms.maps.MapView android:id="@+id/mapview" android:layout_width="100dip" android:layout_height="100dip" android:layout_alignParentTop="true" android:layout_alignRight="@+id/textView1" android:layout_marginRight="15dp" > </com.google.android.gms.maps.MapView> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_above="@+id/textView1" android:layout_centerHorizontal="true" android:text="Button" /> […]

在android viewpager幻灯片?

我有android viewpager幻灯片的问题。 我想在最短的时间之后显示viewpager布局。 这是我的代码示例。 我的主要课程: public class MainActivity extends Activity { private ViewPager mViewPager; private SwipeAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mViewPager = (ViewPager) findViewById(R.id.pager); // set the adapter adapter = new SwipeAdapter(MainActivity.this); mViewPager.setAdapter(adapter); mViewPager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int position) { } @Override public void onPageScrolled(int arg0, float arg1, […]