0

この画像のように、ジェリービーンのような時計(太字で時間、通常の分)を作成したい: ここに画像の説明を入力

Android openSourceから EditClock ウィジェットをダウンロードしました。時計は機能しますが、このコードを使用して「太字」を機能させることはできませ ん。これは私のレイアウトの一部です

<com.myApp.views.DigitalClock
        android:id="@+id/digitalClock1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/musicDashboard"
        android:layout_centerHorizontal="true" >
        
         <TextView android:id="@+id/timeDisplayBackground"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:singleLine="true"
            android:textColor="#ffffffff"
            android:textSize="@dimen/clock_text_size"
           
            android:textAppearance="?android:attr/textAppearanceMedium"
           android:layout_marginBottom="6dip"
            android:ellipsize="none"
            />

        <TextView android:id="@+id/timeDisplayForeground"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:singleLine="true"
            android:ellipsize="none"
             android:textStyle="bold"
            android:textColor="#ffffffff"
            android:layout_alignStart="@+id/timeDisplayBackground"
             android:textAppearance="?android:attr/textAppearanceMedium"
            android:layout_alignTop="@+id/timeDisplayBackground"
            android:layout_marginBottom="6dip"
            android:textSize="@dimen/clock_text_size"
            />
    </com.myApp.views.DigitalClock>

どうすればこれを機能させることができますか? ジンジャーブレッド以上?ありがとう

4

1 に答える 1

1

DigitalClock ウィジェットのコードを変更して、テキストの最初の部分にスパンを追加することができます。updateTime()メソッドで次のコードを試してください。

CharSequence newTime = DateFormat.format(mFormat, mCalendar);
SpannableString spannable = new SpannableString(newTime);
int endIndex = spannable.indexOf(':');
spannable.setSpan(new StylePan(Typeface.BOLD), 0, endIndex, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
mTimeDisplayBackground.setText(spannable);
mTimeDisplayForeground.setText(spannable);
mAmPm.setIsMorning(mCalendar.get(Calendar.AM_PM) == 0);
于 2013-03-09T00:37:25.013 に答える