public class XPageActivity extends AppCompatActivity implements CoreSwitcher
| Modifier and Type | Class and Description |
|---|---|
static interface |
XPageActivity.SaveWithActivity
注解了该注解数据会被保存
|
| Modifier and Type | Field and Description |
|---|---|
protected CoreSwitchBean |
mFirstCoreSwitchBean
记录首个CoreSwitchBean,用于页面切换
|
| Constructor and Description |
|---|
XPageActivity() |
| Modifier and Type | Method and Description |
|---|---|
<T extends XPageFragment> |
changePage(java.lang.Class<T> clazz)
切换fragment[直接替换,不增加到返回堆栈]
|
<T extends XPageFragment> |
changePage(java.lang.Class<T> clazz,
android.os.Bundle bundle)
切换fragment[直接替换,不增加到返回堆栈]
|
Fragment |
changePage(CoreSwitchBean page)
根据SwitchBean切换fragment
|
Fragment |
changePage(java.lang.String pageName)
切换fragment[直接替换,不增加到返回堆栈]
|
Fragment |
changePage(java.lang.String pageName,
android.os.Bundle bundle)
切换fragment[直接替换,不增加到返回堆栈]
|
Fragment |
changePage(java.lang.String pageName,
android.os.Bundle bundle,
CoreAnim coreAnim)
切换fragment[直接替换,不增加到返回堆栈]
|
boolean |
dispatchTouchEvent(android.view.MotionEvent ev)
-------------------------------------点击非输入区域键盘消失--------------------------------------------
|
boolean |
findPage(java.lang.String pageName)
查找fragment
|
XPageFragment |
getActiveFragment()
获得当前活动fragment
|
protected android.view.View |
getBaseLayout()
设置根布局
|
protected boolean |
getIsAddActivityToStack()
获取是否将activity添加到堆栈中
|
protected int |
getLayoutId() |
<T extends XPageFragment> |
getPage(java.lang.Class<T> clazz)
根据页面的类获取XPageFragment
|
XPageFragment |
getPageByName(java.lang.String pageName)
根据页面的名称获取XPageFragment
|
protected java.lang.String |
getPageName()
获得当前活动页面名
|
protected int |
getPopBackDelay() |
static XPageActivity |
getTopActivity()
返回最上层的activity
|
Fragment |
gotoPage(CoreSwitchBean page)
弹出并用bundle刷新数据,在onFragmentDataReset中回调
|
boolean |
isFragmentTop(java.lang.String fragmentTag)
是否位于栈顶
|
protected void |
onActivityResult(int requestCode,
int resultCode,
android.content.Intent data)
如果是fragment发起的由fragment处理,否则默认处理
|
void |
onBackPressed()
如果当前activity中只有一个activity,则关闭activity,否则父类处理
|
protected void |
onCreate(android.os.Bundle savedInstanceState) |
boolean |
onKeyDown(int keyCode,
android.view.KeyEvent event)
如果fragment中处理了则fragment处理否则activity处理
|
protected void |
onRelease()
资源释放
|
protected void |
onSaveInstanceState(android.os.Bundle outState)
保存数据
|
protected void |
onStop() |
<T extends XPageFragment> |
openPage(java.lang.Class<T> clazz)
打开fragment
|
<T extends XPageFragment> |
openPage(java.lang.Class<T> clazz,
android.os.Bundle bundle)
打开fragment
|
Fragment |
openPage(CoreSwitchBean page)
根据SwitchBean打开一个新的fragment
|
Fragment |
openPage(java.lang.String pageName)
打开fragment
|
Fragment |
openPage(java.lang.String pageName,
android.os.Bundle bundle)
打开fragment
|
Fragment |
openPage(java.lang.String pageName,
android.os.Bundle bundle,
CoreAnim coreAnim)
打开fragment
|
Fragment |
openPage(java.lang.String pageName,
android.os.Bundle bundle,
CoreAnim coreAnim,
boolean addToBackStack)
打开fragment,并设置是否添加到返回栈
|
Fragment |
openPage(java.lang.String pageName,
android.os.Bundle bundle,
CoreAnim coreAnim,
boolean addToBackStack,
boolean newActivity)
打开fragment,并设置是否新开activity,设置是否添加到返回栈
|
Fragment |
openPage(java.lang.String pageName,
android.os.Bundle bundle,
int[] anim)
打开fragment
|
Fragment |
openPage(java.lang.String pageName,
android.os.Bundle bundle,
int[] anim,
boolean addToBackStack)
打开fragment,并设置是否添加到返回栈
|
Fragment |
openPage(java.lang.String pageName,
android.os.Bundle bundle,
int[] anim,
boolean addToBackStack,
boolean newActivity)
打开fragment,并设置是否新开activity,设置是否添加到返回栈
|
Fragment |
openPageForResult(CoreSwitchBean page,
XPageFragment fragment)
给BaseFragment调用
|
protected boolean |
popFragmentInActivity(java.lang.String pageName,
android.os.Bundle bundle,
XPageActivity findActivity)
当前activity中弹fragment
|
void |
popPage()
弹出页面
|
protected void |
printAllActivities()
打印,调试用
|
void |
removeUnlessFragment(java.util.List<java.lang.String> fragmentLists)
移除无用fragment
|
protected void |
setContentView()
设置根布局
|
void |
startActivity(CoreSwitchBean page)
根据SwitchPage打开activity
|
void |
startActivity(android.content.Intent intent) |
void |
startActivityForResult(CoreSwitchBean page) |
void |
startActivityForResult(android.content.Intent intent,
int requestCode) |
static void |
unInit()
广播退出时清理activity列表
|
protected CoreSwitchBean mFirstCoreSwitchBean
public static XPageActivity getTopActivity()
public static void unInit()
protected java.lang.String getPageName()
public void popPage()
popPage in interface CoreSwitcherpublic boolean isFragmentTop(java.lang.String fragmentTag)
isFragmentTop in interface CoreSwitcherfragmentTag - fragment的tagpublic boolean findPage(java.lang.String pageName)
findPage in interface CoreSwitcherpageName - page的名字public Fragment gotoPage(CoreSwitchBean page)
gotoPage in interface CoreSwitcherpage - page的名字protected boolean popFragmentInActivity(java.lang.String pageName,
android.os.Bundle bundle,
XPageActivity findActivity)
pageName - page的名字bundle - 传递的参数findActivity - 当前activityprotected int getPopBackDelay()
public void startActivity(CoreSwitchBean page)
page - CoreSwitchBean对象public void startActivity(android.content.Intent intent)
public Fragment openPageForResult(CoreSwitchBean page, XPageFragment fragment)
openPageForResult in interface CoreSwitcherpage - CoreSwitchBean对象fragment - 要求返回结果的BaseFragment对象public void startActivityForResult(CoreSwitchBean page)
page - CoreSwitchBean对象public void startActivityForResult(android.content.Intent intent,
int requestCode)
public Fragment openPage(CoreSwitchBean page)
openPage in interface CoreSwitcherpage - CoreSwitchBean对象public Fragment changePage(CoreSwitchBean page)
changePage in interface CoreSwitcherpage - CoreSwitchBean对象public void removeUnlessFragment(java.util.List<java.lang.String> fragmentLists)
removeUnlessFragment in interface CoreSwitcherfragmentLists - 移除的fragment列表public Fragment openPage(java.lang.String pageName)
pageName - 页面名public Fragment openPage(java.lang.String pageName,
android.os.Bundle bundle)
pageName - 页面名public Fragment openPage(java.lang.String pageName,
android.os.Bundle bundle,
CoreAnim coreAnim)
pageName - 页面名bundle - 参数coreAnim - 动画public <T extends XPageFragment> T openPage(java.lang.Class<T> clazz)
public <T extends XPageFragment> T openPage(java.lang.Class<T> clazz, android.os.Bundle bundle)
clazz - 页面类bundle - 参数public Fragment openPage(java.lang.String pageName,
android.os.Bundle bundle,
CoreAnim coreAnim,
boolean addToBackStack,
boolean newActivity)
pageName - 页面名bundle - 参数coreAnim - 动画addToBackStack - 返回栈newActivity - 新activitypublic Fragment openPage(java.lang.String pageName,
android.os.Bundle bundle,
int[] anim,
boolean addToBackStack,
boolean newActivity)
pageName - 页面名bundle - 参数anim - 动画addToBackStack - 返回栈newActivity - 新activitypublic Fragment openPage(java.lang.String pageName,
android.os.Bundle bundle,
CoreAnim coreAnim,
boolean addToBackStack)
pageName - 页面名bundle - 参数coreAnim - 动画addToBackStack - 返回栈public Fragment openPage(java.lang.String pageName,
android.os.Bundle bundle,
int[] anim,
boolean addToBackStack)
pageName - 页面名bundle - 参数anim - 动画addToBackStack - 返回栈public Fragment openPage(java.lang.String pageName,
android.os.Bundle bundle,
int[] anim)
pageName - 页面名bundle - 参数anim - 动画public <T extends XPageFragment> T changePage(java.lang.Class<T> clazz)
public <T extends XPageFragment> T changePage(java.lang.Class<T> clazz, android.os.Bundle bundle)
clazz - 页面类bundle - 参数public Fragment changePage(java.lang.String pageName)
pageName - 页面名public Fragment changePage(java.lang.String pageName,
android.os.Bundle bundle)
pageName - 页面名bundle - 参数public Fragment changePage(java.lang.String pageName,
android.os.Bundle bundle,
CoreAnim coreAnim)
pageName - 页面名bundle - 参数coreAnim - 动画protected void onCreate(android.os.Bundle savedInstanceState)
protected boolean getIsAddActivityToStack()
true :添加false : 不添加protected void setContentView()
protected int getLayoutId()
protected android.view.View getBaseLayout()
public boolean onKeyDown(int keyCode,
android.view.KeyEvent event)
keyCode - keyCode码event - KeyEvent对象protected void onActivityResult(int requestCode,
int resultCode,
android.content.Intent data)
requestCode - 请求码resultCode - 结果码data - 返回数据public void onBackPressed()
public XPageFragment getActiveFragment()
public <T extends XPageFragment> T getPage(java.lang.Class<T> clazz)
public XPageFragment getPageByName(java.lang.String pageName)
protected void printAllActivities()
protected void onStop()
protected void onRelease()
protected void onSaveInstanceState(android.os.Bundle outState)
outState - Bundle对象public boolean dispatchTouchEvent(android.view.MotionEvent ev)