Viewbadger 메시지 알림의 실현
일단 사용법.
BadgeView badgeView = new BadgeView(this, iv1);
새 BadgeView 대상입니다. 매개 변수의 첫 번째는context 대상이고, 두 번째 매개 변수는 연결된view 대상입니다. (메시지 알림을 표시하는view)
BadgeView 대상을 설정하면textview를 설정하는 것처럼BadgeView의 속성을 설정할 수 있습니다. 마지막으로 show 방법을 사용해서 이BadgeView를 표시하는 것을 기억하십시오.사용하는 방법이 굉장히 간단해요.
//
badge.setText("1");
//
badgeView.setTextSize(8.5f);
badgeView2.setBackgroundResource(R.drawable.noread);
//
badgeView.setTextColor(Color.DKGRAY);
badge.show();
// badgeView
</pre><pre>
badgeView.sethide();
badgeView.setVisibility(View.GONE);
위에서 설명한 속성 설정의 사용 방법은 다음과 같습니다.
BadgeView는textview에서 계승되었다. 단지 그의parentview와 자신 사이에 프레임워크 레이아웃을 추가했다. BadgeView의 디스플레이 효과로 볼 때 우리는 그의 구조를 기본적으로 볼 수 있다. 프레임워크 레이아웃은 메시지 힌트를 표시하는view, 하나의BadgeView가 힌트를 표시하는 메시지이다.구체적 실현:BadgeView의 구조 방법에서 new BadgeView(this, targetview), targetview는BadgeView와 귀속된view이다. 가장 먼저 하는 일은 targetview의parentview를 얻는 것이다. 이parentview에서 targetview를 제거하고 framelayout을 추가하여 대체하는 것이다. 그 다음에 이framelayout에 제거된 targetview와BadgeView 자체를 추가한다.
private void applyTo(View target) {
LayoutParams lp = target.getLayoutParams();
ViewParent parent = target.getParent();
FrameLayout container = new FrameLayout(context);
if (target instanceof TabWidget) {
// set target to the relevant tab child container
target = ((TabWidget) target).getChildTabViewAt(targetTabIndex);
this.target = target;
((ViewGroup) target).addView(container,
new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
this.setVisibility(View.GONE);
container.addView(this);
} else {
// TODO verify that parent is indeed a ViewGroup
ViewGroup group = (ViewGroup) parent;
int index = group.indexOfChild(target);
group.removeView(target);
group.addView(container, index, lp);
container.addView(target);
this.setVisibility(View.GONE);
container.addView(this);
group.invalidate();
}
}
여기에 targetview가 Tabwidget일 때도 있지만 구글은 Tablayout을 사용하는 것을 권장하지 않기 때문에 기본적으로 고려하지 않아도 된다.
Tabwidget에 직접 추가).
다음에 표시할 때 프레임레이아웃에 있는 BadgeView의 표시 속성 (배경, 글꼴 색 등) 을 설정합니다.이렇게 하면BadgeView가 완성되었고 비교가 간단하며 원본 코드에도 하나의 종류가 있다.
메모가 추가된 소스를 추가하려면 다음과 같이 하십시오.http://download.csdn.net/detail/u012806692/9453562
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.