package com.eleks.tesla.mainApp; import android.os.Bundle; import android.support.wearable.view.WatchViewStub; import android.view.View; import android.widget.ImageView; import android.widget.RelativeLayout; import com.eleks.tesla.R; import com.eleks.tesla.events.ToHandHoldRequestEvent; import de.greenrobot.event.EventBus; import static com.eleks.tesla.teslalib.ApiPathConstants.WEAR_ACTION_DOOR_LOCK; import static com.eleks.tesla.teslalib.ApiPathConstants.WEAR_ACTION_DOOR_UNLOCK; import static com.eleks.tesla.teslalib.ApiPathConstants.WEAR_ACTION_FLASHLIGHTS; import static com.eleks.tesla.teslalib.ApiPathConstants.WEAR_ACTION_HORN; /** * Created by maryan.melnychuk on 05.03.2015. */ public class DriveActivity extends MainActivity implements View.OnClickListener { private boolean mIsLocked = true; private ImageView mCenterImage; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final WatchViewStub stub = (WatchViewStub) findViewById(R.id.watch_view_stub); stub.setOnLayoutInflatedListener(new WatchViewStub.OnLayoutInflatedListener() { @Override public void onLayoutInflated(WatchViewStub stub) { initFields(); setUpUI(); setWidgetsPosition(stub.getMeasuredWidth()); setCenterImageSize(); playStartAnimation(); } }); } protected void setUpUI() { mCircles[0].setCircleColor(getResources().getColor(R.color.category_drive)); mRipples[0].setImageResource(R.drawable.fake_ripple_drive); mImages[0].setImageResource(R.drawable.action_honk); mCircles[1].setCircleColor(getResources().getColor(R.color.category_drive)); mRipples[1].setImageResource(R.drawable.fake_ripple_drive); mImages[1].setImageResource(R.drawable.action_lights); mCircles[2].setCircleColor(getResources().getColor(R.color.category_drive)); mRipples[2].setImageResource(R.drawable.fake_ripple_drive); mImages[2].setImageResource(R.drawable.action_lock); mCenterImage = (ImageView) findViewById(R.id.center_image); mCenterImage.setImageResource(R.drawable.drive_logo); } private void setCenterImageSize() { RelativeLayout.LayoutParams lp = (RelativeLayout.LayoutParams) mCenterImage.getLayoutParams(); lp.width = (int) (mImageSideSize * 0.8f); lp.height = (int) (mImageSideSize * 0.8f); mCenterImage.setLayoutParams(lp); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.segment_top: EventBus.getDefault().post(new ToHandHoldRequestEvent(WEAR_ACTION_FLASHLIGHTS)); AnimationUtils.performActionAnimation(mImages[1], mImageSideSize); break; case R.id.segment_left: EventBus.getDefault().post(new ToHandHoldRequestEvent(mIsLocked ? WEAR_ACTION_DOOR_UNLOCK : WEAR_ACTION_DOOR_LOCK)); AnimationUtils.performToggleAnimation(mImages[2], mImageSideSize, mIsLocked ? R.drawable.action_unlock : R.drawable.action_lock); mIsLocked = !mIsLocked; break; case R.id.segment_right: EventBus.getDefault().post(new ToHandHoldRequestEvent(WEAR_ACTION_HORN)); AnimationUtils.performActionAnimation(mImages[0], mImageSideSize); break; } } }