Android——GT使用教程(十六) Game 游戏类 教程

让你在开发中爱不释手的 GT 包。关注GSLS官网,查看更多源码 ヾ(✿゚▽゚)ノ工具包。

所有文章 小编尽量让读者可以 直接 读懂 完全 复制粘贴,其中复杂或较多 的源码 会有 源码 并 贴上 github 网址

GT 类 里面的源码完全开源较多的中文注释,让更多的人直接读懂。

点个关注点个赞呗(〃'▽'〃),关注博主最新发布库: https://github.com/1079374315/GSLS_Tool

美帝 框架,让创造变得如此简单!

当你依赖GT库后就可以进行以下操作了

 public static void startGameWindow(Activity activity)//开启游戏窗体模式


 public static void startGameWindows(final Activity activity)//开启永久的游戏窗口模式(不推荐使用)

遥感组件:

效果图:

Android——GT使用教程(十六) Game 游戏类 教程

第一步:写入 xml 布局中

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/tv"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        android:textSize="24sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        />

    <view
        android:id="@+id/rv"
        class="com.gsls.gt.GT$Game$RockerView"
        android:layout_width="200dp"
        android:layout_height="200dp"
        app:rockerBackground="#FF9800"
        app:rockerRadius="50dp"
        app:areaBackground="#2196F3"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintHorizontal_bias="0.54"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintVertical_bias="0.934" />

</androidx.constraintlayout.widget.ConstraintLayout>

第二步: 获取组件进行监听

@GT.Annotations.GT_Activity(R.layout.activity_main)
public class MainActivity extends GT.AnnotationActivity {

    @GT.Annotations.GT_View(R.id.tv)
    private TextView tv;

    @GT.Annotations.GT_View(R.id.rv)
    GT.Game.RockerView rv;

    @Override
    protected void initView(Bundle savedInstanceState) {
        build(this);//绑定 Activity

        rv.setCallBackMode(GT.Game.RockerView.CallBackMode.CALL_BACK_MODE_MOVE);//设置回调方式为 状态有变化的时候回调
        rv.setOnShakeListener(GT.Game.RockerView.DirectionMode.DIRECTION_8, new GT.Game.RockerView.OnShakeListener() {
            @Override
            public void onStart() {
                tv.setText("开始");
            }

            @Override
            public void direction(GT.Game.RockerView.Direction direction) {
                String direction1 = getDirection(direction);//获取方向
                tv.setText(direction1);//设置遥感转动的方向
            }

            @Override
            public void onFinish() {
                tv.setText("结束");
            }
        });

    }

    //返回字符串方向
    private String getDirection(GT.Game.RockerView.Direction direction) {
        String message = null;
        switch (direction) {
            case DIRECTION_LEFT:
                message = "左";
                break;
            case DIRECTION_RIGHT:
                message = "右";
                break;
            case DIRECTION_UP:
                message = "上";
                break;
            case DIRECTION_DOWN:
                message = "下";
                break;
            case DIRECTION_UP_LEFT:
                message = "左上";
                break;
            case DIRECTION_UP_RIGHT:
                message = "右上";
                break;
            case DIRECTION_DOWN_LEFT:
                message = "左下";
                break;
            case DIRECTION_DOWN_RIGHT:
                message = "右下";
                break;
            default:
                break;
        }
        return message;
    }

}

一些常用的参数:

app:rockerBackground="#FF9800"    //设置中心圆的颜色
app:rockerRadius="50dp"           //设置中心圆的半径
app:areaBackground="#2196F3"      //设置背景圆的颜色

总结:实现起来非常简单,这就是GT库的初衷。感谢您的关注。

上一篇:python爬虫BeautifulSoup库抓取500彩票网竞彩足球信息并在excel表中对中奖赔率设置格式


下一篇:强化学习运行环境,atari 2600 游戏模拟器,atari-py库 —— 无法运行游戏,pacman,surround,报错: Segmentation fault (core dumped)