我目前正在开发一个项目,该项目有多个阶段来设置某个特定的东西。在第一阶段,用户提供标题,描述和必需的int值。我需要用这些数据做两件事:
这是我需要帮助的人......
getCount();
时它会返回值。我可以获取与Title值相同的Class内的值,但似乎无法在SectionsPagerAdapter中获取它。
任何帮助表示赞赏!
答案 0 :(得分:1)
或者,您可以扩展SectionsPagerAdapter并为该值包含一个setter或使用一个方便的构造函数。
这样的事情:
public class CustomPagerAdapter extends PagerAdapter {
private int mPageCount;
/**
*
* @param pageCount
*/
public CustomPagerAdapter(int pageCount) {
this.mPageCount = pageCount;
}
@Override
public int getCount() {
return mPageCount;
}
}
答案 1 :(得分:0)
我不清楚您的问题,但在您更改页面或有价值之前,您可以使用此课程:
Class SavedDave extends Application(){
private static String data;
//Contructor
....
public void SetData(String value){
this.data = value;
}
public String getData(){
return data;
}
}
通过这个课程,您可以在应用程序运行的每个地方设置并获取您的价值,是否可以解决您的问题?
答案 2 :(得分:-1)
假设您在activity中的方法名为getTitle();
从适配器调用它就像context.getTitle();
其中context是您传递给适配器
的构造函数的上下文private final Context context;
public DataPagerAdapter( Context context )
{
this.context = context;
}
答案 3 :(得分:-1)
使用Shared Preferences。这是在Android中执行此操作的推荐方法。
@SharedPref
public interface ExamplePrefs {
// The name will have default value of "Anonymous"
@DefaultString("Anonymous")
String name();
// The field age will have default value 42
@DefaultInt(42)
int age();
// The field address will have default value of "MyAddress"
@DefaultString("MyAddress")
String name();
// The field lastUpdated will have default value 0
long lastUpdated();
}
对于您的用例,只需创建一个SectionsPagerPref类,如下所示:
@SharedPref
public interface SectionsPagerPref {
@DefaultInt(0)
int getCount();
}