android5.x添加sim1,sim2标识

原创 2015年07月07日 20:04:57
1,mobile_signal_group.xml 
.....
<FrameLayout
android:id="@+id/mobile_combo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<ImageView
android:id="@+id/mobile_signal"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
/>
<ImageView
android:id="@+id/mobile_type"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
/>




<!-- http://blog.csdn.net/sergeycao :mobile_slot_indicateor". }@ -->
<ImageView
android:id="@+id/mobile_slot_indicator"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
/>


</FrameLayout>




2,SignalClusterView.java


//http://blog.csdn.net/sergeycao
int mIndicatorSlot=0;
//http://blog.csdn.net/sergeycao end


private ArrayList<PhoneState> mPhoneStates = new ArrayList<PhoneState>();






//http://blog.csdn.net/sergeycao
int[] slots_indicators=new int[]{R.drawable.sim1_indicator,R.drawable.sim2_indicator};
// 图片sim1_indicator,sim2_indicator是你制作的sim1,sim2标识
//http://blog.csdn.net/sergeycao end




@Override
public void setSubs(List<SubscriptionInfo> subs) {
Xlog.d(TAG, "setSubs(), subs= " + subs);
// Clear out all old subIds.
mPhoneStates.clear();
if (mMobileSignalGroup != null) {
mMobileSignalGroup.removeAllViews();
}
final int n = subs.size();
for (int i = 0; i < n; i++) {


//http://blog.csdn.net/sergeycao 
mIndicatorSlot=subs.get(i).getSimSlotIndex();
//http://blog.csdn.net/sergeycao end


inflatePhoneState(subs.get(i).getSubscriptionId());
}
private PhoneState inflatePhoneState(int subId) {
PhoneState state = new PhoneState(subId, mContext);


//http://blog.csdn.net/sergeycao 
state.mSlotIndicator=mIndicatorSlot;
//http://blog.csdn.net/sergeycao end


if (mMobileSignalGroup != null) {
mMobileSignalGroup.http://blog.csdn.net/sergeycaoView(state.mMobileGroup);
}
mPhoneStates.http://blog.csdn.net/sergeycao(state);
return state;
}






private class PhoneState {
private final int mSubId;
private boolean mMobileVisible = false;
private int mMobileStrengthId = 0, mMobileTypeId = 0;
private boolean mIsMobileTypeIconWide;
private String mMobileDescription, mMobileTypeDescription;


private ViewGroup mMobileGroup;


//http://blog.csdn.net/sergeycao 
private ImageView mMobile, mMobileType,mMobileSlotIndicator;// http://blog.csdn.net/sergeycao mMobileSlotIndicator


//http://blog.csdn.net/sergeycao 
private int mSlotIndicator;


public void setViews(ViewGroup root) {
mMobileGroup = root;
mMobile = (ImageView) root.findViewById(R.id.mobile_signal);
mMobileType = (ImageView) root.findViewById(R.id.mobile_type);
/// M: Support "Service Network Type on Statusbar".
mSignalNetworkType = (ImageView) root.findViewById(R.id.network_type);


// http://blog.csdn.net/sergeycao


mMobileSlotIndicator= (ImageView) root.findViewById(R.id.mobile_slot_indicator);
 
//http://blog.csdn.net/sergeycao end
}


public boolean apply(boolean isSecondaryIcon) {
Xlog.d(TAG, "apply(" + mSubId + ")," + " mMobileVisible= " + mMobileVisible +
", mIsAirplaneMode= " + mIsAirplaneMode);
if (mMobileVisible && !mIsAirplaneMode) {
mMobile.setImageResource(mMobileStrengthId);
mMobileType.setImageResource(mMobileTypeId);
mMobileGroup.setContentDescription(mMobileTypeDescription
+ " " + mMobileDescription);
mMobileGroup.setVisibility(View.VISIBLE);


//http://blog.csdn.net/sergeycao
mMobileSlotIndicator.setImageResource(slots_indicators[mSlotIndicator]);
//http://blog.csdn.net/sergeycao end


} else {
mMobileGroup.setVisibility(View.GONE);
}

相关文章推荐

Android4.1 如何实现状态栏上信号图标有SIM卡1,2标记,并且当处于2G状态显示“G”,处于3G状态显示“3G”

[Android Version] 6577/6589 Android V4.1 [Description] 如何实现状态栏上信号图标有SIM卡1,2标记,并且当处于2G状态显示“G...

Android 4.x SIM卡联系人插入过程

一 对SIM卡联系人删除过程,其实分为两部分来完成,

Android4.X 的SIM卡信息的初始化过程

Phone 对象初始化的过程中,会加载SIM卡的部分数据信息,这些信息会保存在IccRecords 和 AdnRecordCache 中。SIM卡的数据信息的初始化过程主要分为如下几个步骤    RI...

Android4.X 应用层读取SIM卡联系人的过程

   SIM卡里可以存储部分联系人数据 ,USIM卡也可以存储部分联系人数据,只不过USIM卡存储的联系人的数量更多,以及支持更多的联系人数据字段。   在Android 的应用层 是通过Ic...

Multi2sim 编译与使用(1)

Multi2sim是一款开源CPU-GPU多核计算机架构模拟仿真平台。该平台目前能够仿真的芯片架构有X86,Arm, AMD Evergreen GPU 和AMD Thousand Island ...
  • xer1234
  • xer1234
  • 2013年04月16日 12:14
  • 2818

STC12C5A60S2控制SIM900A短信GSM模块

  • 2014年09月09日 00:29
  • 70KB
  • 下载

ddr2_s3a_bank1_sim

  • 2011年12月08日 09:35
  • 2.71MB
  • 下载

【android L数据连接】如何在Sim Cards的cellular data添加OFF

如何在sim cards的preferences sim中添加一个OFF项,来实现和SystemUi中下拉中的data connection相同的功能(关闭当前卡的数据连接)? 在SimDia...

iPhone 5福音 网友发布Nano-SIM剪卡教程

神人教你手工打造Nano-SIM卡(图片引自idownloadblog)   对于国内果粉来说,iPhone 5(参数 论坛 软件)最让人头疼的并不是它首批发售的国家不包含中国内地,毕竟这...

Java卡应用开发其实并不难(5)-SIM卡的Applet开发

Java卡应用开发其实并不难(5)-SIM卡的Applet开发   在SIM卡中针对Java的规范是由ETSI 03.19及其后来衍生的3GPP TS 43.019标准来定义。和一般Jav...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android5.x添加sim1,sim2标识
举报原因:
原因补充:

(最多只允许输入30个字)