Leanback中的GuidedStepFragment

Leanback实现专属于TV端的控件,加载布局控件的,和RecyclerView,ListView控件差不多,不同点就是只能用在TV端,LeanBack分为好几种fragment类型。

GuidedStepFragment只是其中一种。


直接上代码吧,,不废话了!!后续再分享其他的fragment的类型。

public class OneStepFragment extends GuidedStepFragment {

    private static final int ACTION_ID_AGREE = 1;
    private static final int ACTION_ID_DISAGREE = 2;

    @Override
    public GuidanceStylist onCreateGuidanceStylist() {
        return new GuidanceStylist(){
            @Override
            public int onProvideLayoutId() {
                //自定义布局,可以放图标
                return R.layout.guidance;
            }
        };
    }


    @NonNull
    @Override
    public GuidanceStylist.Guidance onCreateGuidance(Bundle savedInstanceState) {
        String title = "大标题";
        String description = "描述描述";
        GuidanceStylist.Guidance guidance = new GuidanceStylist.Guidance(title, description,
                null, null);
        return guidance;
    }

    @Override
    public void onCreateActions(List<GuidedAction> actions, Bundle savedInstanceState) {

        actions.add(new GuidedAction.Builder(getActivity())
                .id(ACTION_ID_DISAGREE)
                .title("执行的响应动作")
                .description("描述")
                .build()
        );
        actions.add(new GuidedAction.Builder(getActivity())
                .id(ACTION_ID_AGREE)
                .title("执行的响应动作")
                .description("描述")
                .build()
        );

    }

    @Override
    public void onGuidedActionClicked(GuidedAction action) {

        switch ((int)action.getId()){
            case ACTION_ID_DISAGREE:
                Toast.makeText(getActivity(),"执行相应的动作", Toast.LENGTH_SHORT).show();
                break;
            case ACTION_ID_AGREE:
                Toast.makeText(getActivity(),"执行相应的动作", Toast.LENGTH_SHORT).show();
                break;
        }
    }

}
style中写,activity设置主题,设置左右两边的权重,我写的是0.3,背景什么的都可以在style中添加,也可以在代码中自定义style,清单文件中把LAUNCHER改成LEANBACK_LAUNCHER。
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />

<item name="guidedActionContentWidthWeight">@string/guidedactions_width_weight</item>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值