public class MarqueeView extends ViewGroup {
+ private int defaultWidth = 0;
+
public MarqueeView(Context context) {
this(context, null);
}
int parentWidth = MeasureSpec.makeMeasureSpec(totalWidth, MeasureSpec.EXACTLY);
setMeasuredDimension(parentWidth, heightMeasureSpec);
//测量完以后,判断宽度是否够用
- int defaultWidth = MeasureSpec.getSize(widthMeasureSpec);
+ if (defaultWidth == 0) {
+ defaultWidth = MeasureSpec.getSize(widthMeasureSpec);
+ }
//如果不够用则滚动,如果够用则不滚动
ICLogger.d("default width == > " + totalWidth + " real width == > " + defaultWidth);
removeCallbacks(scrollTask);
}
//拿到它的位置
Position position = (Position) item.getTag();
+ if (position == null) {
+ continue;
+ }
position.left -= stepDx;
position.right = position.left + item.getMeasuredWidth();
//检查位置是否超了
android:layout_height="match_parent"
android:layout_alignParentLeft="true" />
+ <com.ic.launcher.view.BatteryView
+ android:id="@+id/right_battery_view"
+ android:layout_width="wrap_content"
+ android:layout_height="match_parent"
+ android:layout_alignParentRight="true"
+ android:layout_centerVertical="true" />
+
+
+ <TextView
+ android:id="@+id/battery_value"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerVertical="true"
+ android:layout_marginRight="5dp"
+ android:layout_toLeftOf="@id/right_battery_view"
+ android:text="100%"
+ android:textColor="@color/white"
+ android:textSize="20sp"
+ android:textStyle="bold" />
+
<com.ic.launcher.view.MarqueeView
android:id="@+id/mar_queue_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_centerVertical="true"
- android:layout_marginLeft="10dp"
- android:layout_marginRight="90dp"
+ android:layout_toLeftOf="@id/battery_value"
android:layout_toRightOf="@id/signal_view">
<ImageView
android:src="@mipmap/top_icon_location"
android:visibility="gone" />
-
<ImageView
android:id="@+id/top_icon_bt"
android:layout_width="wrap_content"
android:src="@mipmap/top_icon_wear"
android:visibility="gone" />
+ <ImageView
+ android:id="@+id/top_icon_ic_shake"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:src="@mipmap/top_icon_shake"
+ android:visibility="gone" />
<ImageView
android:id="@+id/top_icon_connected"
android:src="@mipmap/top_icon_ic_talk_msg"
android:visibility="gone" />
- <ImageView
- android:id="@+id/top_icon_ic_shake"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:src="@mipmap/top_icon_shake"
- android:visibility="gone" />
-
-
<ImageView
android:id="@+id/top_icon_silent"
android:layout_width="wrap_content"
</com.ic.launcher.view.MarqueeView>
- <com.ic.launcher.view.BatteryView
- android:id="@+id/right_battery_view"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:layout_alignParentRight="true"
- android:layout_centerVertical="true" />
-
-
- <TextView
- android:id="@+id/battery_value"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerVertical="true"
- android:layout_marginRight="5dp"
- android:layout_toLeftOf="@id/right_battery_view"
- android:text="100%"
- android:textColor="@color/white"
- android:textSize="20sp"
- android:textStyle="bold" />
</RelativeLayout>
\ No newline at end of file