juahya 一个动态解析android layout xml 布局文件的框架
2015-09-02 17:29
567 查看
juahya
Juahya is android real time xml layout inflaterjuahya 是一个动态解析androidlayout布局xml 文件的框架。
juahya 通过读取string 解析里面的android组件 包括自定义组件,封装成layout返回
可以添加自定义的view和自定义的标签来解析
项目地址:https://github.com/jixieshi999/juahya
version 1.1 2015-05-26
support android view CheckBox --》IFCheckBoxinflater EditText --》IFEditTextinflater ImageView--》IFImageViewinflater TextView--》IFTextViewinflater support android layout LinearLayout--》IFLinearLayout RelativeLayout--》IFRelativeLayout ScrollView--》IFScrollViewLayout
Demo
what can juahya do ?
你可以使用juahya来解析出view来,数据类型可以是string,stream,数据来源可以是web,sqlite,sdcard …#
how to build your custom view inflater 1.add IFXXX on com.xml.inflate.inflater xxx is android view 2.config you IFxxx to com.xml.inflate.factory.IFLalterSImpleLinearLayoutFactory 3.change your xml layout you can see some of the things juahya used in his magic tricks ,
#
how to build your custom juahyaview inflater 1.add IFJxxx on com.xml.inflate.inflater.juahya IFJxxx is extends IFXXX and add juahya ATTRIBUTE 2.config you IFxxx to com.xml.inflate.factory.IFLalterSImpleLinearLayoutFactory 3.change your xml layout you can see some of the things juahya used in his magic tricks
Usage
IFlateServicePoxy service = new IFlateServicePoxy(); service.setIJuahyaLayoutInflateListener(DemoListActivity.this); String result="<LinearLayout android:orientation=\"vertical\" " +" android:layout_width=\"fill_parent\" android:layout_height=\"fill_parent\" " +"</LinearLayout>"; View view= service.inflate(result, DemoListActivity.this); setContentView(view);
eg file test.xml
http://jixieshi999.github.io/ilife/juahya/test.xml
#
<TextView android:layout_weight="1" android:layout_width="wrap_content" android:background="#e2e2c2" android:layout_height="fill_parent" android:gravity="center" android:text="会员注册" /> <com.juahya.guis.JTextView android:layout_width="200" android:gravity="center" android:layout_gravity="center" android:layout_height="wrap_content" android:background="#e2eff2" juahya:attrKey="action_save_upload" android:text="保存" android:paddingTop="10" android:paddingBottom="10" juahya:attrDescription="12331" android:id="12331" /> ... <ImageView android:layout_width="wrap_content" android:layout_gravity="center" android:layout_height="wrap_content" android:background="@url/http://tupian.hbrc.com/joke/UpFilesnew/2012/6/23/201262303147971.jpg" />
#
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <!-- ......layout...... --> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="输入用户名" /> </LinearLayout>
Acknowledgements
Android-Universal-Image-Loader for the img lazy loader======
ps :
初版完成之后,联想了下,通过juahya可以与webservice或者ajax与后台交互做简单数据的采集
感觉像是一个简单的浏览器模型。。。
相关文章推荐
- android 电话状态的监听(来电和去电)
- Android5.0 Gallery2上编译Gallery模块出错
- Android官网Activities文档翻译
- 使用ScrollView属性fillViewport解决android布局不能撑满全屏的问题
- android如何打印当前的线程及进程
- Android 属性动画 (一)
- Android adb常见问题
- 《ArcGIS Runtime SDK for Android开发笔记》——(2)、Android Studio基本配置与使用
- Android中修改源码实现AutoCompeteTextView控件的模糊匹配
- Android 最火的快速开发框架XUtils
- android屏幕适配详解
- Android 清理应用缓存
- Android Studio安装插件
- 【沙龙干货分享】你要知道的N个Android适配问题
- Android自定义控件之二 使用path绘图
- Android 程序完全退出的几种方式
- Android中style和theme巧用:Android应用程序启动时背景画面的显示问题
- 强烈推荐android studio用的几个插件
- Android 回传值
- Android Studio导入Android源码