Cómo agregar visualización de caracteres en la barra de estado de Android
frameworks\base\packages\SystemUI\res\layout\status_bar.xml
lt;LinearLayout android: id= "@ id/statusIcons" android: diseño_width="wrap_content" android: diseño_height="match_parent id/statusIcons" android: diseño_width="wrap_content" android: diseño_height="match_parent" android: diseño_alignParentRight="true" android: paddingRight= "6dip " android:gravity="center_vertical" android:orientation="horizontal"/gt;lt;com.android.systemui.StatusBar.Clockandroid:layout_width="wrap_content" android.layout_height="match_parent" android:singleLine="true " android :paddingRight="6dip" android:gravity="center_vertical|left" /gt;lt;com .systemui.statusbar.HandSetNum //Los caracteres que necesitamos para mostrar android:textAppearance="@*android:style/TextAppearance. StatusBar.Icon " android.layout_width="wrap_content" android: layout_height="match_parent" android: textSize="14sp" android: gravitation="center_vertical" android.paddingLeft="10dip" /gt; lt; com .android.systemui. statusbar.HandSetNum // Los caracteres que necesitamos para mostrar android: textAppearance="@*android: style/TextAppearance.StatusBar.Icon" android.paddingLeft="10dip" android: paddingRight="10dip" /gt
<; p> Nota: lt; com.android.systemui.statusbar.Clocklt; com.android.HandSetNum
El significado es muy claro, es decir, agregar un archivo de nombre de clase. en el directorio de la barra de estado, nos referimos a closk y crea un archivo HandSetNum.java en
\frameworks\base\packages\SystemUI\src\com\, que es básicamente lo mismo que clock.java.
android: gravitation="center_vertical": Indica la posición dentro del componente
android: layout_gravity="center_vertical": Indica la posición del componente en el diseño.
android: paddingLeft="10dip": lejos de los márgenes del componente
android: paddingRight="10dip"
2.
java
clase pública HandSetNum extiende TextView {privado booleano mAttached; público HandSetNum(Contexto contexto) { this(contexto, nulo} público HandSetNum(Contexto contexto, atributos de conjunto de atributos) {esto(contexto, atributos, 0); } public HandSetNum(Contexto de contexto, AttributeSet attrs, int defStyle) { super(contexto, attrs, defStyle); @HandSetNum(Contexto de contexto, AttributeSet attrs, int defStyle); ) { super.onAttachedToWindow(); if (!mAttached) { mAttached = true; filtro IntentFilter = nuevo IntentFilter(); filter.addAction(Intent.ACTION_HANDSET_NUM); } updateHandSetNum(); } }.@Override protected void onDetachedFromWindow() { super.onDetachedFromWindow(); if (mAttached) { getContext().} BroadcastReceiver final privado mIntentReceiver = new BroadcastReceiver() { @ Anular public void onReceive( Contexto de contexto, intención de intención) { Acción de cadena = intent.getAction(); if (action.equals(Intent.ACTION_HANDSET_ NUM))if (action.equals(Intent.ACTION_HANDSET_ NUM)) { updateHandSetNum() }}; updateHandSetNum() { setText("Hs:1"); }}}/end HandSetNum
El código es básicamente el mismo que clock.java, principalmente setText();
3. Compile el código fuente de Android