FragmentGridPagerAdapter

public abstract class FragmentGridPagerAdapter
extends GridPagerAdapter

java.lang.Object
   ↳ android.support.wearable.view.GridPagerAdapter
     ↳ android.support.wearable.view.FragmentGridPagerAdapter


GridPagerAdapter的一个实现,它将每个页面表示为 Fragment

最小实现只需要抽象方法: getRowCount()getColumnCount(int)getFragment(int, int)

如果对数据进行了任何更改, notifyDataSetChanged()必须调用 notifyDataSetChanged()以通知适配器该更改,以便它可以反映在视图中。

如果要插入或删除数据页面,可以通过实施 getFragmentId(int, int)来提高性能,以根据内容为每个项目提供稳定的ID。

Summary

Inherited constants

From class android.support.wearable.view.GridPagerAdapter

Inherited fields

From class android.support.wearable.view.GridPagerAdapter

Public constructors

FragmentGridPagerAdapter(FragmentManager fm)

Public methods

void destroyItem(ViewGroup container, int row, int column, Object object)

移除给定位置的页面。

Fragment findExistingFragment(int row, int column)
void finishUpdate(ViewGroup container)

在所示页面中的更改完成时调用。

Drawable getBackgroundForPage(int row, int column)

提供内容作为特定页面的背景显示。

abstract Fragment getFragment(int row, int column)

返回指定行号和列号的 Fragment

final Drawable getFragmentBackground(int row, int column)

返回实现 GridPageOptions Fragments的背景。

long getFragmentId(int row, int column)

返回给定行/列位置的 Fragment的唯一标识符。

Fragment instantiateItem(ViewGroup container, int row, int column)

为给定位置创建页面。

boolean isViewFromObject(View view, Object object)

确定页面视图是否与 instantiateItem(ViewGroup, int, int)返回的特定键对象相关联。

Protected methods

void applyItemPosition(Object object, Point position)

getItemPosition(Object)之后 getItemPosition(Object)以允许超类更新其内部簿记,如果子类已被重写 getItemPosition(Object)

void removeFragment(Fragment fragment, FragmentTransaction transaction)
void restoreFragment(Fragment fragment, FragmentTransaction transaction)

Inherited methods

From class android.support.wearable.view.GridPagerAdapter
From class java.lang.Object

Public constructors

FragmentGridPagerAdapter

FragmentGridPagerAdapter (FragmentManager fm)

Parameters
fm FragmentManager

Public methods

destroyItem

void destroyItem (ViewGroup container,
                int row,
                int column,
                Object object)

移除给定位置的页面。 适配器负责从容器中移除视图,但它只能确保在从finishUpdate(ViewGroup)返回时完成finishUpdate(ViewGroup)

Parameters
container ViewGroup: The containing View from which the page will be removed.
row int: the row to be destroyed
column int: the column within the row to be destroyed
object Object: The same object that was returned by instantiateItem(ViewGroup, int, int).

findExistingFragment

Fragment findExistingFragment (int row,
                int column)

Parameters
row int
column int
Returns
Fragment

finishUpdate

void finishUpdate (ViewGroup container)

在所示页面中的更改完成时调用。 此时,您必须确保所有页面实际上已根据需要添加或从容器中移除。

Parameters
container ViewGroup: The containing View which is displaying this adapter's page views

getBackgroundForPage

Drawable getBackgroundForPage (int row,
                int column)

提供内容作为特定页面的背景显示。

返回值BACKGROUND_NONE表示没有页面特定的背景。 并应使用行背景(如果有的话)。

这个实现只是返回 getFragmentBackground(int, int)的结果。

Parameters
row int: the row of the page
column int: the column of the page
Returns
Drawable the background for the given page or BACKGROUND_NONE

getFragment

Fragment getFragment (int row,
                int column)

在指定的行号和列号处返回 Fragment

只有在对数据集没有进行结构性改变时,或者如果重写 getFragmentId(int, int)每个位置上的每个项目提供稳定的标识符,则片段实例可以被存储和重用,否则结果是未定义的。

Parameters
row int: the row of the position
column int: the column of the position
Returns
Fragment

getFragmentBackground

Drawable getFragmentBackground (int row,
                int column)

返回实现 GridPageOptions Fragments的背景。

Parameters
row int: the row of the fragment
column int: the column of the fragment
Returns
Drawable the background drawable or BACKGROUND_NONE if the fragment does not implement GridPageOptions

getFragmentId

long getFragmentId (int row,
                int column)

返回给定行/列位置的 Fragment的唯一标识符。

默认实现根据位置返回一个固定的数字。 如果项目的位置可以更改,子类应该覆盖此方法。

Parameters
row int: the row that this item is at
column int: the column within this row that the item is at
Returns
long Unique identifier for the item at position

instantiateItem

Fragment instantiateItem (ViewGroup container,
                int row,
                int column)

为给定位置创建页面。 适配器负责将视图添加到此处给出的容器中,但它只能确保在从finishUpdate(ViewGroup)返回时完成此操作

Parameters
container ViewGroup: containing View in which the page will be shown
row int: the row to be instantiated
column int: the column within the row to be instantiated
Returns
Fragment a an object representing the new page

isViewFromObject

boolean isViewFromObject (View view,
                Object object)

确定页面视图是否与instantiateItem(ViewGroup, int, int)返回的特定键对象相关联。 这个方法对于PagerAdapter正常运行是必需的。

Parameters
view View: Page View to check for association with object
object Object: Object to check for association with view
Returns
boolean true if view is associated with the key object object

Protected methods

applyItemPosition

void applyItemPosition (Object object,
                Point position)

getItemPosition(Object)之后 getItemPosition(Object)以允许超类更新他们的内部簿记,如果子类已被覆盖 getItemPosition(Object)

Parameters
object Object: Object representing the item passed to getItemPosition(Object).
position Point: position which was returned from getItemPosition(Object).

removeFragment

void removeFragment (Fragment fragment,
                FragmentTransaction transaction)

Parameters
fragment Fragment
transaction FragmentTransaction

restoreFragment

void restoreFragment (Fragment fragment,
                FragmentTransaction transaction)

Parameters
fragment Fragment
transaction FragmentTransaction