写点什么

使用 Idea 搭建 App 开发环境,创建安卓工程

作者:技能实验室
  • 2022-10-19
    河南
  • 本文字数:1584 字

    阅读完需:约 1 分钟

使用 Idea 开发安卓 App,只需要安卓 SDK 插件既可;


最近的 Idea 版本都包含有安卓开发的相关环境:

安装安卓 SDK:

首先选择 File -> Project -> 创建工程,



点击 Android,然后选择 Install SDK 按钮,开始安装 SDK;


创建安卓工程


重复以上步骤,在创建工程页面,选择 Android,选择 IPhone 和 Tablet 选项,输入工程名称和包名,创建一个新工程;



创建完成后的页面如下:


一个 gradle 工程、包含有一个 app 的模块,分别有自己的 build.gradle 文件;


按需修改配置(可选)

安装其他的 SDK 版本:


点击 File-Settings-Android SDK 选择所需的 SDK 版本安装


按需修改下 app 文件夹下的 gradle 文件。修改版本



修改 material 版本,解决后想的布局页面警告问题(Path.ok()问题)


给页面添加一个按钮

在 activity_main.xml 文件中添加按钮,可以选择拖拽的方式添加,或者通过代码直接添加



添加一个按钮的代码如下:


 <Button android:id="@+id/btn1"            android:text="按住说话"            android:onClick="say"            android:longClickable="true"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            app:layout_constraintBottom_toBottomOf="parent"            app:layout_constraintLeft_toLeftOf="parent"            app:layout_constraintRight_toRightOf="parent"            app:layout_constraintTop_toTopOf="parent"        />
复制代码


界面如下:


给按钮添加点击事件

在 MainActivity 中添加按钮的点击事件和长按监听:


点击函数可以再 xml 中设置:


 android:onClick="say"
复制代码



定义一个 Button,通过 findViewById 获取到页面的 button 跟 button 添加一个长按监听事件

长按监听器实现

长按监听器需要实现 View.OnTouchListener 类;然后实现其中的 onTouch 方法;


class MidOnTouchListener implements View.OnTouchListener {    private int long_pressed = 0; // 长按标志符      @Override    public boolean onTouch(View v, MotionEvent event) {        if (event.getAction() == MotionEvent.ACTION_DOWN) {            Thread t = new Thread() {                @Override                public void run() {                    super.run();                    try {                        Thread.sleep(250);                  } catch (InterruptedException e) {                        e.printStackTrace();                    }                    // 线程未被打断                    if (long_pressed == 0) {                        long_pressed = 1;                           hd.sendMessage()                      } else {                        long_pressed = 0;                    }                }            };            t.start();        }        if (event.getAction() == MotionEvent.ACTION_UP) {            if (long_pressed == 0) { // 标识符未置位                long_pressed = -1;                // TODO: 执行点击对应的方法            } else if (long_pressed == 1) {   // 标识符已置位,则为长按                // TODO: 执行长按释放对应的方法                long_pressed = 0;            }        }        return false;    }
复制代码


定义一个处理器,实际处理业务逻辑


  private Handler hd = new Handler(Looper.myLooper()) {        public void handleMessage(Message msg) {            super.handleMessage(msg);            if (msg.what == 111) {                // TODO: 执行长按按下对应的方法                Log.d("say", "长按操作");            }        }    };
复制代码


安装到手机模拟器测试


启动手机模拟器,在 app 窗口会出现模拟器选择,选择模拟器安装调试;



完成

发布于: 刚刚阅读数: 4
用户头像

还未添加个人签名 2022-07-26 加入

还未添加个人简介

评论

发布
暂无评论
使用Idea搭建App开发环境,创建安卓工程_android_技能实验室_InfoQ写作社区