您的位置:首页 > 移动开发 > Android开发

android 依赖工程 Android 工程引用其他Library工程

2014-09-22 22:15 232 查看
一:

新建一个android工程只需要把IsLibray设置打上勾就行了




添加好后其他工程就可以使用该工程里边的东西了,可以直接启动依赖工程里边的activity,添加fragment等



注意:

A为普通Android工程B为设置了is Library的工程,B中有使用R.id,当A工程引用了B工程时会在A工程的gen目录中生成B的R文件,里面也包含了A的R文件中的内容,但是当B的id 定义在layout文件中时需要注意layout的名称,如果A下有个main.xml的layout,B下也有个main.xml的layout,那么A编译时就会将B的main.xml中的所有id忽略,导致混淆报错提示 找不到id

所有问题出在,被引用的项目和当前项目之间的资源冲突。假如当前项目存在与被引用项目相同的资源(除了layout外

,还包括图片,styles等等)就会默认使用当前项目的资源,完全忽略被引用项目的资源

所以依赖工程的命名,最好统一加一个前缀~~



二:Library工程调用主工程

直接不用调用可以使用反射调用, 比如fragment跳转:

public <T> void RelInvoke(Class<T> t,Object _ma) throws Exception
	 {  
	     t.getDeclaredMethod("switchContent",Fragment.class).invoke(_ma,new ShipScheFragment());//参数为Fragment   
	 }
Object ma =  getActivity();
        	 
        	 try {
				RelInvoke(ma.getClass(),ma);
			} catch (Exception e) {
				System.out.println("反射调用方法报错:"+e);
		    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: