开发手记--android布局用占位符%1$s

在开发中,如果遇到如下listview的item布局

以前总是把“物料名称:”作为一个TextView,后面具体值作为一个TextView。这样做使得布局变得很繁琐。后来发现可以使用占位符%1$s使其变成一个TextView,使得布局变得简单。

1.在strings.xml中定义<string name="material_name">物料名称:%1$s</string>

2.在布局TextView中引入  

 

<TextView
            android:id="@+id/tv_material_name" 
            style="@style/text_delivery_order"
            android:text="@string/material_name"/>

 

3.在Java代码中进行赋值

 

 

.setText(String.format(getResources().getString(R.string.material_name),"食用油"));

下面是封装的String.format()方法:

 public static String stringFromat(Context context, int sId, Object... args) {
        if (sId == 0 || args == null)
            return null;
        return String.format(context.getResources().getString(sId), args);
    }

扩展:还可以添加多个占位符<string name="my">我叫:%1$s,我来自%2$s,我做%3$s工作</string>

 

.setText(String.format(getResources().getString(R.string.my),"小明","北京","程序员");

常用的有:

%n$ms:代表输出的是字符串,n代表是第几个参数,设置m的值可以在输出之前放置空格 
%n$md:代表输出的是整数,n代表是第几个参数,设置m的值可以在输出之前放置空格
%n$mf:代表输出的是浮点数,n代表是第几个参数,设置m的值可以控制小数位数,如m=2.2时,输出格式为00.00 

(注:m放置空格,并不代表m是几,就是几个空格,具体看实际效果)

补充:

在string.xml中可以加入 HTML元素:<b>表示粗文本 <i>表示斜体文本 <u>表示下划线文本 ,但是如果使用占位符format的时候,会出现失效的情况。需要使用 htmlEncode(String) 对用于带格式文本的字符串中任何可能的 HTML 字符进行转义。如果您向 String.format() 传递的字符串参数可能包含“<”或“&”之类的字符,则必须在设置格式前进行转义,这样在通过 fromHtml(String) 传递带格式字符串时,字符就能以原始形式显示出来。 

 <string name="audit_title_str"><u>  %1$s  </u>量化审核工作指南</string>
 String escapedUsername = TextUtil.htmlEncode(username);
 Resources res = getResources();
 String text = String.format(res.getString(R.string.audit_title_str), escapedUsername);
 .setText(Html.fromHtml(text));

空格:&#160;   <: &lt;     >:&gt;

 

 

 

 

### 回答1: Infineon英飞凌高边开关是一款高性能、高可靠性的电子器件,广泛应用于工业自动化、汽车电子、医疗设备等领域。对于工程师而言,掌握Infineon英飞凌高边开关的开发应用技巧尤为重要。 首先,为了实现高效的电路设计,需要对电压、电流、功率等相关参数进行充分的考虑。以Infineon英飞凌高边开关为例,在驱动方面要注意输出引脚的电流、驱动电压范围与驱动能力等参数。在控制方面,需要注意芯片内的保护电路、EAP、DAP等控制引脚的设置,以及芯片内部的保护逻辑。 其次,应用手记中对电路的阻容滤波、脉宽调制、电感耦合等方案进行了详细的介绍。在不同的应用场合下,选择不同的方案可以最大程度地提高电路性能。此外,通过手记还可以掌握如何设计稳定的启动电路、提高系统稳定性的解决方案等技巧。 最后,手记中还提供了Infineon英飞凌高边开关运用到的各种应用案例。如在汽车电子领域,Infineon英飞凌高边开关可以应用于驱动负载、照明、电动窗、电动座椅等部件;在医疗设备领域,可以应用于低噪音电源、嵌入式控制器等方案中。这些案例不仅可以为工程师们提供借鉴,还可以让工程师们更好地了解Infineon英飞凌高边开关的应用实际情况,为工程项目的实现提供有价值的经验。 ### 回答2: Infineon英飞凌的高边开关(high-side switch)是一种电力转换器,适用于断开或关闭直流电源电路中正电源电流的控制。其主要作用是可以控制电路开关状态,从而实现电路的高效率和稳定性。应用范围广泛,包括汽车电子、工业控制、灯光控制、家电等领域。 Infineon英飞凌的高边开关具有多种特点,例如高可靠性、低开关损耗、宽电源电压范围、集成过温保护等。其开关管的驱动也非常重要,可由电压控制、电流控制或者组合控制实现。通过控制信号的变化实现开关状态的切换,从而达到灵活性和可靠性的同时提高了效率。 在具体应用中,使用Infineon英飞凌的高边开关需要遵循一定的设计流程和注意事项。设计流程包括系统需求分析、数据手册评估、选型与确认、电路设计与布局、电路实现及测试等。在注意事项方面,需要特别注意工作温度、过压、过流等问题,同时应选择合适的维护和保养方法,以确保高边开关的可靠性和稳定性。 总之,Infineon英飞凌的高边开关是一种可靠性高、效率好的电力转换器,广泛应用于各个领域。在具体应用时,需要遵循一定的设计流程和注意事项,以确保其高效、稳定、可靠地运行。 ### 回答3: Infineon英飞凌高边开关是一种高性能的晶体管,常用于汽车电子、工业控制、电源等领域。其特点是能够承受高压输入,并且具备快速开关能力。 在汽车电子领域,Infineon英飞凌高边开关常常用于控制车灯、制动系统、空调等设备。通过对高边控制电路的设计,可以实现对这些设备的高效控制和保护。 在工业控制领域,Infineon英飞凌高边开关常用于马达控制、电热器控制等场景。在这些场景中,高边开关能够提供更加高效的电流控制,并且能够承受大电流输入。 在电源领域,Infineon英飞凌高边开关则可以用于直流到直流的转换。通过这种方式,可以实现更加高效的能量转换,减少能量损耗。 总之,Infineon英飞凌高边开关在各个领域中的应用非常广泛。通过对其特性和控制技术的深入研究,可以实现更加高效、安全、稳定的电子设备。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值