공식 "Android Developers"의 this tutorial 다음에 설정 메뉴와 같은 화면의 중심 거리를 기준으로 항목의 크기를 조정하는 RecyclerView
을 작성하려고합니다. 이 이미지처럼WearableRecyclerView OffsettingHelper.updateChild()가 작동하지 않습니다.
:
문제는 updateChild()
방법은 전혀 호출되지됩니다 않습니다. 내 오프셋 도우미가 실제로 설정되어 있는지 확인하기 위해 중단 점을 사용하고 updateChild에서 하나 더 확인했지만 모든 설정이 올바르지 만 작동하지는 않습니다.
웨어/build.gradle
compile 'com.google.android.support:wearable:2.0.0'
compile 'com.google.android.gms:play-services-wearable:10.2.0'
provided 'com.google.android.wearable:wearable:2.0.0'
MainActivity.java
mRecyclerView = (WearableRecyclerView) findViewById(R.id.recycler);
mLayoutManager = new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false);
mAdapter = new MainAdapter(this, null);
mRecyclerView.setLayoutManager(mLayoutManager);
mRecyclerView.setAdapter(mAdapter);
mRecyclerView.setCenterEdgeItems(true);
mRecyclerView.setOffsettingHelper(new RecyclerOffsettingHelper());
: 여기
내 코드입니다public class RecyclerOffsettingHelper extends DefaultOffsettingHelper {
/** How much should we scale the icon at most. */
private static final float MAX_ICON_PROGRESS = 0.65f;
private float mProgressToCenter;
public RecyclerOffsettingHelper() {}
@Override
public void updateChild(View child, WearableRecyclerView parent) {
super.updateChild(child, parent);
// Figure out % progress from top to bottom
float centerOffset = ((float) child.getHeight()/2.0f)/(float) parent.getHeight();
float yRelativeToCenterOffset = (child.getY()/parent.getHeight()) + centerOffset;
// Normalize for center
mProgressToCenter = Math.abs(0.5f - yRelativeToCenterOffset);
// Adjust to the maximum scale
mProgressToCenter = Math.min(mProgressToCenter, MAX_ICON_PROGRESS);
child.setScaleX(1 - mProgressToCenter);
child.setScaleY(1 - mProgressToCenter);
}
}
튜토리얼에서 놓친 것이 있습니까? 아니면 잘못 되었습니까? 미리 감사드립니다.
첫 번째 두 요구 사항을 구현하고 관련 XML 레이아웃의 기본 컨테이너로'WearableRecyclerView'를 사용하고'setCenterEdgeItems (boolean)'메소드를'true'로 설정하십시오. 로그가있는 경우 추가 할 수도 있습니다. –
@ Mr.Rebot 예 WearableRecyclerView를 주 컨테이너로 사용하고 추가 한 코드처럼'setCenterEdgeItems (boolean)'을 true로 설정했지만 행운은 없습니다. 그리고 추가 할 중요한 로그 나 오류가 없기를 두려워합니다. ( – Sdghasemi
현재 동일한 문제가 발생 했습니까? – Marc