Android 多模块项目入门
2019独角兽企业重金招聘Python工程师标准>>>
项目大了就需要拆分,这里简单用个示例来入门。
像平常一样创建一个android项目
创建一个新的模块
新建一个模块(New Module),选择Android Library。
最终两个项目结构:
代码
settings.gradle中内容:
include ':app', ':mylibrary'
在主模块app的build.gradle中的dependencies
中增加:
compile project(":mylibrary")
MainActivity内容如下:
package test1.letiantian.me.myapplication;import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;import test1.letiantian.me.mylibrary.TestActivity;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button btn = (Button) findViewById(R.id.btn);btn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Intent intent = new Intent(MainActivity.this,TestActivity.class);startActivity(intent);}});}
}
activity_main.xml内容如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/activity_main"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"tools:context="test1.letiantian.me.myapplication.MainActivity"><TextViewandroid:layout_width="wrap_content"android:layout_height="wrap_content"android:text="Hello World!"/><Buttonandroid:id="@+id/btn"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="进入library中的activity"/></LinearLayout>
TestActivity内容如下:
package test1.letiantian.me.mylibrary;import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;public class TestActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_test);Button btn = (Button) findViewById(R.id.btn);btn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {Toast.makeText(getApplicationContext(), "测试toast", Toast.LENGTH_SHORT).show();}});}
}
activity_test.xml内容如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/activity_test"android:layout_width="match_parent"android:layout_height="match_parent"android:paddingBottom="@dimen/activity_vertical_margin"android:paddingLeft="@dimen/activity_horizontal_margin"android:paddingRight="@dimen/activity_horizontal_margin"android:paddingTop="@dimen/activity_vertical_margin"android:orientation="vertical"tools:context="test1.letiantian.me.mylibrary.TestActivity"><TextViewandroid:layout_width="match_parent"android:layout_height="wrap_content"android:text="测试页面"/><Buttonandroid:id="@+id/btn"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="toast一下"/></LinearLayout>
值得注意:两个布局文件中的button的id都是btn
效果
转载于:https://my.oschina.net/letiantian/blog/867913
Android 多模块项目入门相关推荐
- dagger android,dagger.android多模块项目实现
本文适合有一定的Dagger2使用基础的同学 前两篇文章我们讲了两种多模块项目怎么使用Dagger2. 发现在每个Activity的onCreate中都需要调一个inject方法NewsCompone ...
- gradle构建多模块项目_Gradle入门:创建多项目构建
gradle构建多模块项目 尽管我们可以仅使用一个模块来创建一个运行中的应用程序,但有时将我们的应用程序划分为多个较小的模块是比较明智的. 因为这是一个相当普遍的用例,所以每个自重的构建工具都必须 ...
- android添加工程依赖工程,Android Studio为项目加上模块依赖的图文方法
一些用户们在使用Android Studio的时候,不是很熟悉其中是怎么为项目加上模块依赖?今日这篇文章就带来了Android Studio为项目加上模块依赖的图文方法. Android Studio ...
- Xposed模块开发入门-最基本的项目创建
本人结合网络上的种种教程以及自己实践,记录下一个完整的基本Xposed模块项目的创建过程. 开发环境: Mac系统 AndroidStudio 3.2.1 gradle 3.2.1 VirtualXp ...
- 五天入门SpringBoot(4)--多模块项目(对比visual studio)
1.创建框架应用 创建后,因为只是一个框架,可删除src目录以及src目录里所有内 2.创建King-Base模块项目 创建成功后,在主项目下将包含models标签 需要注意的是:此处的模块不会像vi ...
- 140款Android开源优秀项目源码
140款Android开源优秀项目源码 BeautifulRefreshLayout-漂亮的美食下拉刷新 https://github.com/android-cjj/BeautifulRefresh ...
- Xposed 模块开发入门
Xposed模块开发入门 阅读本文之前,你应该准备好以下事项: 安装 Android Studio,并完成配置 掌握 Xposed 的安装和使用方法 拥有阅读 Java 代码的能力 阅读本文之后你将掌 ...
- Android开发的经典入门教材和学习…
Android开发的经典入门教材和学习路线? 1.想利用寒假期间学习Android开发,了解到应该先学习Java,不知道选哪本书入门,学习Java和Android有什么经典教材,适合初学者.(有C++ ...
- Android 4游戏编程入门经典
<Android 4游戏编程入门经典> 基本信息 原书名:Beginning Android 4 Games evelopment 作者: (美)Mario Zechner Robert ...
最新文章
- hql投影查询之—— [Ljava.lang.Object; cannot be cast to cn.bdqn.guanMingSys.entity.Notice
- Python读写文件(附完整模块化代码)
- grid安装前检查报PRVE-0426:/dev/shm less than the require
- 【MyBatis笔记】日志
- 何凯明MAE局限性被打破,与Swin 结合,训练速度大幅提升!
- android截屏方法是黑屏,Android截屏表面视图显示黑屏
- 用户画像理解和方法论
- MMA7455加速度传感器测量角度
- 跨境电子商务( Cross-Border Electronic Commerce )是什么?
- 清理winsxs的小工具
- JavaWeb之上传与下载
- MtaEdt22.exe修改IIS连接数无效的另类解决连接数的方法
- ubuntu16.04录制4K屏软件使用备注
- Oracle 11g安装报错
- 中兴网络设备交换机路由器查看BGP状态检查命令方法
- Phaser并发阶段器
- Erasure Code - EC纠删码原理
- 小米5怎样升级android,小米5开发版怎么升级Android 7.0?小米5开发版升级Android 7.0教程...
- python 之 第一次亲密接触
- php简易留言板功能,php简单的留言板与回复功能具体实现