Android 카운트다운 컨트롤 Countdown View 의 인 스 턴 스 코드 상세 설명
6122 단어 Android카운트다운 컨트롤CountDownView
코드 참조https://github.com/hanjx-dut/CountDownView
쓰다
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.hanjx-dut:CountDownView:1.1'
}
실현 적 효과효과 도
대응 하 는 view:
<com.hanjx.ui.CountDownView
android:id="@+id/count_down_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
app:auto_start="true"
app:text_mode="time_variant"
app:duration="3000"
app:paint_stroke="3dp"/>
<com.hanjx.ui.CountDownView
android:id="@+id/count_down_2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
app:finished_color="#000000"
app:auto_start="true"
app:start_angle="90"
app:text_mode="time_variant"
app:duration="3000"
app:paint_stroke="3dp"/>
<com.hanjx.ui.CountDownView
android:id="@+id/count_down_3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
app:finished_color="#FF0000"
app:unfinished_color="#00FF00"
app:auto_start="true"
app:duration="2000"
app:refresh_interval="quick"
app:text=" "
app:text_size="12sp"
app:text_color="#FF0000"
app:text_mode="fixed"
app:paint_stroke="2dp"/>
<com.hanjx.ui.CountDownView
android:id="@+id/count_down_4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
app:auto_start="true"
app:text_mode="fixed"
app:clockwise="false"
app:text=""
app:duration="2000"
app:paint_stroke="3dp"/>
<com.hanjx.ui.CountDownView
android:id="@+id/count_down_5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
app:text_mode="time_variant"
app:duration="5000"
app:paint_stroke="1.5dp"/>
모든 속성:
<declare-styleable name="CountDownView">
<attr name="duration" format="integer"/> <!-- -->
<attr name="refresh_interval"> <!-- ms -->
<enum name="normal" value="16"/>
<enum name="quick" value="11"/>
<enum name="slow" value="20"/>
</attr>
<attr name="paint_stroke" format="dimension"/> <!-- -->
<attr name="finished_color" format="color"/> <!-- -->
<attr name="unfinished_color" format="color"/> <!-- -->
<attr name="start_angle" format="float"/> <!-- -90 -->
<attr name="clockwise" format="boolean"/> <!-- true -->
<attr name="auto_start" format="boolean"/> <!-- false -->
<!-- -->
<attr name="text" format="string"/> <!-- -->
<attr name="text_mode"> <!-- / ( )-->
<enum name="fixed" value="0"/>
<enum name="time_variant" value="1"/>
</attr>
<attr name="text_size" format="dimension"/> <!-- -->
<attr name="text_color" format="color"/> <!-- -->
</declare-styleable>
텍스트 부분 에 더 많은 사용자 정의 속성 을 제공 하지 않 았 습 니 다.4.567914.붓 과 문 자 를 사용자 정의 할 수 있 습 니 다.예 를 들 어 demo 의 다섯 번 째:
CountDownView countDownView = findViewById(R.id.count_down_5);
countDownView.setTextDrawer(new CountDownView.TextDrawer() {
@Override
public void setTextPaint(Paint paint, long leftTime, int textMode) {
if (leftTime < 2000) {
paint.setTextSize(SizeUtils.sp2px(12));
}
paint.setTypeface(Typeface.DEFAULT_BOLD);
paint.setColor(0xFFFF802E);
}
@Override
public String getText(long leftTime, int mode, String originText) {
if (leftTime < 2000) {
return " ";
}
return String.format("%ss", leftTime == 0 ? leftTime : leftTime / 1000 + 1);
}
});
감청 하 다
countDownView.setCountDownListener(new CountDownView.CountDownListener() {
@Override
public void onTick(long leftTime, float finishedAngle) {
// leftTime: , finishedAngle:
}
@Override
public void onStop(boolean reset) {
// countDownView.stop()
}
@Override
public void onFinished() {
}
});
ps:인 터 페 이 스 는 기본적으로 이 루어 집 니 다.임의의 방법 을 선택 할 수 있 습 니 다.총결산
안 드 로 이 드 카운트다운 컨트롤 CountDownView 의 인 스 턴 스 코드 에 대한 자세 한 설명 은 여기까지 입 니 다.더 많은 안 드 로 이 드 카운트다운 컨트롤 CountDownView 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 많은 응원 부탁드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.