开发者学堂课程【mPaaS 小程序开发实战:Android 端04小程序自定义导航栏】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/301/detail/3514
Android 端04小程序自定义导航栏
内容介绍
一、小程序自定义标题栏
一、小程序自定义标题栏
1、前置条件
如果您需要开通小程序自定义标题栏,需在custom configjson中加入:
{
“value": "NO",
"key": "mp_ta_use_orginal_mini_nagivationbar"
}
加入到默认使用小程序的工程里面
小程序和 H5共用一个导航栏,我们可以参考 H5的设置
首先,要实现 AbsTitleView,实现 AbsTitleView 后,要在 H5ViewProvider 中返回回去,并且把 Provider 设置给容器。
Dame 可以参考 android-tinyapp
除了拷贝 AbsTitleView,还有小程序右上角的一个胶囊区 Option button和 close button。
小程序右上角控制区
当处于小程序场景时,最右侧区域需要特殊实现,步骤如下:
(1)继承 AbsTinyOptionMenuView 抽象类实现自定义控制区。
(2)在合适的地方,比如应用启动时,设置 TinvQptionMenuViewProvider 至容器。H5Utils.setProvider(TinvOptionMenuViewProvider.class.getName0.new TinvOptionMenuViewProviderof
@Override
public AbsTinyOptionMenuView createView(Context context){
return new TinyOptionMenuView(context);
}
});
按照容器规范要求,开发者必须实现和配置更多和 关闭按钮视图。
public
abstract void setOptionMenuOnClickListener(View.OnClickListener listener);
public abstract void setCloseButtonOnClickListener(View.OnClickListener listener);
public abstract void setCloseButtonOnLongClickListener(View.OnLongClickListener listener);
public abstract void onStateChanged(TinyAppActionState currentState);
public abstract View getView();
当小程序在使用定位的时候,会出现一个图标。如下图:
h5_new_title_layout.xml(自定义的title)
layout_tiny_right.xml(右边的胶囊)
public class MyApplication extends Application{
@Override
protected void attachBaseContext(Context base){
super.attachBaseContext(base);
QuinoxlessFramework.setup(this,()→{
H5Utils.setProvider(H5AppCenterPresetProvider.class.getName(),newTinyAppCenterPresetProvider());
});
)I
@Override
public void onCreate(){
super.onCreate();
QuinoxlessFramework.init();}}
把它设置给我们的容器。
一切准备就绪进行运行。
打开小程序,可以看到现在的小程序已经自定义过了,随机点击一个示图,可以看到如图示例:
以上就是自定义小程序的内容。