分享一个android的工具类(扩充根据R类中的id寻址xml)

android提供的根据id找简单资源如下


String about = getString(R.string.about);
String[] aryShop = getResources().getStringArray(R.array.level);



分享一个自己扩充的可以针对性的选个多个ID资源


package lidongbo.util;

import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import java.util.StringTokenizer;

import lidongbo.test.R;
import lidongbo.test.R.drawable;

/**
*
* @author lidongbo
*
*/
public class ReadR {


public static Integer[] readId(Class<drawable> innerClass) throws IllegalArgumentException, IllegalAccessException {
List<Integer> result=new ArrayList<Integer>();
Field[] fileds = innerClass.getDeclaredFields();
for (int i = 0; i < fileds.length; i++) {
result.add(fileds[i].getInt(innerClass));
}
return result.toArray(new Integer[0]);
}


/**
* ,|空格 分割
* @param innerClass
* @param fileNameLikse
* @param andor true 与条件
* @return
* @throws IllegalArgumentException
* @throws IllegalAccessException
*/
public static Integer[] readId(Class<drawable> innerClass,String fileNameLikse,Boolean andor) throws IllegalArgumentException, IllegalAccessException {

if(fileNameLikse==null || andor==null){
return readId(innerClass);
}

List<Integer> result=new ArrayList<Integer>();
Field[] fileds = innerClass.getDeclaredFields();

LOODFILED:for (int i = 0; i < fileds.length; i++) {
String filedName=fileds[i].getName();
if(andor){//与
StringTokenizer st=new StringTokenizer(fileNameLikse,",| ");
while(st.hasMoreElements()){
if(!filedName.contains(st.nextElement().toString())){
continue LOODFILED;
}
}
result.add(fileds[i].getInt(innerClass));
System.out.println(filedName);
}else{//或
StringTokenizer st=new StringTokenizer(fileNameLikse,",| ");
while(st.hasMoreElements()){
if(filedName.contains(st.nextElement().toString())){
result.add(fileds[i].getInt(innerClass));
System.out.println(filedName);
continue LOODFILED;
}
}
}
}
return result.toArray(new Integer[0]);
}

public static void main(String[] args){

Integer[] ii=null;
try {
ii = ReadR.readId(R.drawable.class,"d,r",true);
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
if(ii!=null){
for (int i = 0; i < ii.length; i++) {
System.out.println(ii[i]);
}
}
}


}



贴下我的R

package lidongbo.test;

public final class R {
public static final class array {
public static final int level=0x7f050000;
}
public static final class attr {
}
public static final class drawable {
public static final int blue=0x7f02000b;
public static final int brown=0x7f02000e;
public static final int darkgray=0x7f020007;
public static final int darkgreen=0x7f02000d;
public static final int dreamweaver=0x7f020000;
public static final int flash=0x7f020001;
public static final int icon=0x7f020002;
public static final int illustrator=0x7f020003;
public static final int indesign=0x7f020004;
public static final int lightroom=0x7f020005;
public static final int photoshop=0x7f020006;
public static final int pink=0x7f02000c;
public static final int translucent_background=0x7f02000a;
public static final int transparent_background=0x7f020009;
public static final int white=0x7f020008;
}
public static final class id {
public static final int age=0x7f070012;
public static final int food_relativelayout=0x7f070000;
public static final int food_text_explanation=0x7f070002;
public static final int food_text_question=0x7f070001;
public static final int height=0x7f070013;
public static final int interim_button_submit=0x7f07000c;
public static final int interim_text_text1=0x7f070009;
public static final int interim_text_text2=0x7f070008;
public static final int interim_text_text3=0x7f070007;
public static final int interim_text_text4=0x7f070006;
public static final int interim_text_text5=0x7f07000a;
public static final int interim_text_text6=0x7f07000b;
public static final int interim_text_text7=0x7f070005;
public static final int interim_text_title=0x7f070004;
public static final int myGallery=0x7f070023;
public static final int name=0x7f070011;
public static final int next_button_back=0x7f07001d;
public static final int next_button_submit=0x7f07001c;
public static final int next_edittext_circumference=0x7f07001e;
public static final int next_edittext_hipcircumference=0x7f070020;
public static final int next_edittext_waistline=0x7f07001f;
public static final int next_text_text1=0x7f070018;
public static final int next_text_text3=0x7f070016;
public static final int next_text_text4=0x7f070019;
public static final int next_text_text5=0x7f07001a;
public static final int next_text_text6=0x7f07001b;
public static final int next_text_title=0x7f070015;
public static final int result_relativelayout=0x7f070021;
public static final int result_text_result=0x7f070022;
public static final int sex=0x7f07000d;
public static final int sex1=0x7f07000e;
public static final int sex2=0x7f07000f;
public static final int sex3=0x7f070010;
public static final int text2=0x7f070017;
public static final int weight=0x7f070014;
public static final int widget0=0x7f070003;
}
public static final class layout {
public static final int food=0x7f030000;
public static final int interim=0x7f030001;
public static final int main=0x7f030002;
public static final int next=0x7f030003;
public static final int result=0x7f030004;
}
public static final class string {
public static final int about=0x7f040006;
public static final int about_msg=0x7f040008;
public static final int age=0x7f040010;
public static final int app_name=0x7f040001;
public static final int back=0x7f040015;
public static final int choose=0x7f04002b;
public static final int circumference=0x7f040012;
public static final int exit=0x7f040007;
public static final int food_fruits=0x7f040016;
public static final int food_fruits_apple=0x7f040019;
public static final int food_fruits_banana=0x7f04001a;
public static final int food_fruits_orange=0x7f04001b;
public static final int food_fruits_peach=0x7f04001c;
public static final int food_fruits_pear=0x7f04001e;
public static final int food_fruits_watermelon=0x7f04001d;
public static final int food_meat=0x7f040017;
public static final int food_meat_all=0x7f040027;
public static final int food_vegetables=0x7f040018;
public static final int food_vegetables_cabbage=0x7f040026;
public static final int food_vegetables_chili=0x7f040022;
public static final int food_vegetables_chineseCabbage=0x7f040023;
public static final int food_vegetables_guineaSquash=0x7f04001f;
public static final int food_vegetables_kidneyBean=0x7f040020;
public static final int food_vegetables_potato=0x7f040021;
public static final int food_vegetables_radish=0x7f040024;
public static final int food_vegetables_tomato=0x7f040025;
public static final int height=0x7f040003;
public static final int hello=0x7f040000;
public static final int hip_circumference=0x7f040013;
public static final int iKnow=0x7f040028;
public static final int name=0x7f040014;
public static final int ok=0x7f040009;
public static final int sex=0x7f040002;
public static final int sex1=0x7f04000c;
public static final int sex2=0x7f04000d;
public static final int sex3=0x7f04000e;
public static final int style1=0x7f040004;
public static final int style2=0x7f040005;
public static final int style3=0x7f04000b;
public static final int submit=0x7f04000a;
public static final int turn=0x7f04002a;
public static final int waistline=0x7f040011;
public static final int wait=0x7f040029;
public static final int weight=0x7f04000f;
}
public static final class style {
public static final int Style1=0x7f060000;
public static final int Style2=0x7f060001;
public static final int Style3=0x7f060002;
public static final int Theme=0x7f060003;
public static final int Theme_Translucent=0x7f060004;
}
}
内容概要:本文设计了一种基于PLC的全自动洗衣机控制系统内容概要:本文设计了一种,采用三菱FX基于PLC的全自动洗衣机控制系统,采用3U-32MT型PLC作为三菱FX3U核心控制器,替代传统继-32MT电器控制方式,提升了型PLC作为系统的稳定性与自动化核心控制器,替代水平。系统具备传统继电器控制方式高/低水,实现洗衣机工作位选择、柔和过程的自动化控制/标准洗衣模式切换。系统具备高、暂停加衣、低水位选择、手动脱水及和柔和、标准两种蜂鸣提示等功能洗衣模式,支持,通过GX Works2软件编写梯形图程序,实现进洗衣过程中暂停添加水、洗涤、排水衣物,并增加了手动脱水功能和、脱水等工序蜂鸣器提示的自动循环控制功能,提升了使用的,并引入MCGS组便捷性与灵活性态软件实现人机交互界面监控。控制系统通过GX。硬件设计包括 Works2软件进行主电路、PLC接梯形图编程线与关键元,完成了启动、进水器件选型,软件、正反转洗涤部分完成I/O分配、排水、脱、逻辑流程规划水等工序的逻辑及各功能模块梯设计,并实现了大形图编程。循环与小循环的嵌; 适合人群:自动化套控制流程。此外、电气工程及相关,还利用MCGS组态软件构建专业本科学生,具备PL了人机交互C基础知识和梯界面,实现对洗衣机形图编程能力的运行状态的监控与操作。整体设计涵盖了初级工程技术人员。硬件选型、; 使用场景及目标:I/O分配、电路接线、程序逻辑设计及组①掌握PLC在态监控等多个方面家电自动化控制中的应用方法;②学习,体现了PLC在工业自动化控制中的高效全自动洗衣机控制系统的性与可靠性。;软硬件设计流程 适合人群:电气;③实践工程、自动化及相关MCGS组态软件与PLC的专业的本科生、初级通信与联调工程技术人员以及从事;④完成PLC控制系统开发毕业设计或工业的学习者;具备控制项目开发参考一定PLC基础知识。; 阅读和梯形图建议:建议结合三菱编程能力的人员GX Works2仿真更为适宜。; 使用场景及目标:①应用于环境与MCGS组态平台进行程序高校毕业设计或调试与运行验证课程项目,帮助学生掌握PLC控制系统的设计,重点关注I/O分配逻辑、梯形图与实现方法;②为工业自动化领域互锁机制及循环控制结构的设计中似家电控制系统的开发提供参考方案;③思路,深入理解PL通过实际案例理解C在实际工程项目PLC在电机中的应用全过程。控制、时间循环、互锁保护、手动干预等方面的应用逻辑。; 阅读建议:建议结合三菱GX Works2编程软件和MCGS组态软件同步实践,重点理解梯形图程序中各环节的时序逻辑与互锁机制,关注I/O分配与硬件接线的对应关系,并尝试在仿真环境中调试程序以加深对全自动洗衣机控制流程的理解。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值