使用 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 中设置:
定义一个 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 窗口会出现模拟器选择,选择模拟器安装调试;
完成
评论