您的位置:首页 > 理论基础 > 计算机网络

转自 http://blog.chinaunix.net/uid-23392298-id-3322769.html

2014-02-20 12:37 281 查看

创建library供多个工程共享代码、资源是非常常见的需求,网上这种资料非常少,基本上都是讲创建java工程,然后export,这种方式缺点非常多,大家可以自己google一下。

本文着重介绍如何创建Android library,并且在工程中使用此library提供的资源,具体步骤如下:

1. 创建一个Android工程,命名为MyLib

2. 进入工程设置选中Is Library

3. 创建另一个Android工程,命名为MyProj

4. 进入工程设置,添加MyLib

5. 在MyProj的AndroidManifest.xml中加入对library中activity的引用

<activity android:name="net.devdiv.mylib.MyLib" />

6. 由于编译后library中的资源和引用它的project资源是合并在一起的,为了避免重名问题,需要对library中资源进行重命名

1). 把main.xml改为mylib.xml,同时修改MyLib.java代码setContentView(R.layout.mylib);

2). strings.xml修改为

<?xml version="1.0" encoding="utf-8"?>

< resources>

< string name="mylibhello">String fetched from lib!</string>

< string name="mylib_app_name">MyLib</string>

< /resources>

7. 在MyProj中引用MyLib的资源

package net.devdiv.myproj;

import android.app.Activity;

import android.os.Bundle;

import android.widget.TextView;

import net.devdiv.mylib.*;

import android.content.Intent;

public class MyProj extends Activity {

/** Called when the activity is first created. */

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

TextView tv = (TextView)findViewById(R.id.myprojtext);

tv.setText(R.string.mylibhello);

Intent it = new Intent(this, MyLib.class);

startActivity(it);

}

}

个人觉得应注意:自己定义的library用的权限或是声明,在要引用的工程中要做补充
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐