import android.os.Parcel;
import android.os.Parcelable;
+import android.util.Log;
import android.view.View;
/**
*/
public class ButtonClickListener implements View.OnClickListener, View.OnLongClickListener, Parcelable
{
+ private final String TAG = toString();
private IClickCallback callback = null;
ButtonClickListener()
{
callback.clickedBtn3();
}
+ else if (id == R.id.main_counter)
+ {
+ callback.clickedCounter();
+ }
}
}
@Override
public void writeToParcel(Parcel dest, int flags)
{
-
+ Log.v(TAG, "writeToParcel() ");
}
public static final Parcelable.Creator<ButtonClickListener> CREATOR = new Parcelable.Creator<ButtonClickListener>()
{
private ButtonClickListener(Parcel in)
{
-/*
try
{
//
+ Log.v(TAG, " in : " + in.toString());
}
catch (Exception e)
{
e.printStackTrace();
}
-*/
}
}
public interface IClickCallback
{
+ void clickedCounter();
void clickedBtn1();
void clickedBtn2();
void clickedBtn3();
private final String TAG = toString();
private final IWearableActivityControl controller = new WearableActivityController();
private MyTimerCounter counter = new MyTimerCounter();
+ private boolean isCounterLapTime = false;
/**
*
int bgColor;
BoxInsetLayout insetLayout = findViewById(R.id.box_inset_layout);
RelativeLayout layout = findViewById(R.id.relative_main_layout);
- TextView main = findViewById(R.id.main_counter);
+
ImageButton btn1 = findViewById(R.id.btn1);
ImageButton btn2 = findViewById(R.id.btn2);
ImageButton btn3 = findViewById(R.id.btn3);
+
+ updateMainSubCounter();
+
if (timerCounter.isStarted())
{
bgColor = Color.CYAN;
btn3.setVisibility(View.INVISIBLE);
btn3.invalidate();
- main.setText(MyTimerCounter.getTimeString(timerCounter.getPastTime()));
- main.invalidate();
-
updateElapsedTimes();
}
else if (timerCounter.isReset())
btn3.setVisibility(View.INVISIBLE);
btn3.invalidate();
- main.setText(MyTimerCounter.getTimeString(timerCounter.getPastTime()));
- main.invalidate();
-
updateElapsedTimes();
}
else
btn3.setBackgroundColor(bgColor);
btn3.invalidate();
- main.setText(MyTimerCounter.getTimeString(timerCounter.getPastTime()));
- main.invalidate();
-
updateElapsedTimes();
}
}
}
+ @Override
+ public void clickedCounter()
+ {
+ // 表示順番を変える
+ isCounterLapTime = !isCounterLapTime;
+ }
+
/**
*
*/
}
}
+ private void updateMainSubCounter()
+ {
+ TextView main = findViewById(R.id.main_counter);
+ TextView sub = findViewById(R.id.sub_counter1);
+
+ ITimerCounter timerCounter = counter;
+ if (timerCounter != null)
+ {
+ long time1 = timerCounter.getPastTime();
+ CharSequence str1 = MyTimerCounter.getTimeString(time1);
+
+ CharSequence str2 = "";
+ if (timerCounter.isStarted())
+ {
+ long time2 = timerCounter.getCurrentElapsedTime();
+ int lapCount = timerCounter.getElapsedCount();
+ if ((time2 >= 100) && (lapCount > 1)) {
+ str2 = "[" + lapCount + "] " + MyTimerCounter.getTimeString(time2);
+ }
+ }
+
+ if ((str2.length() > 0)&&(isCounterLapTime))
+ {
+ // ラップタイムの方を大きく表示する
+ main.setText(str2);
+ sub.setText(str1);
+ }
+ else
+ {
+ main.setText(str1);
+ sub.setText(str2);
+ }
+ main.invalidate();
+ sub.invalidate();
+ }
+ }
+
+
private void updateElapsedTimes()
{
String dummy = "";
- TextView area1 = findViewById(R.id.sub_counter1);
- TextView area2 = findViewById(R.id.sub_counter2);
- TextView area3 = findViewById(R.id.sub_counter3);
- TextView area4 = findViewById(R.id.sub_counter4);
+ TextView area1 = findViewById(R.id.sub_counter2);
+ TextView area2 = findViewById(R.id.sub_counter3);
+ TextView area3 = findViewById(R.id.sub_counter4);
ITimerCounter timerCounter = counter;
if (timerCounter != null)
area2.invalidate();
area3.setText(dummy);
area3.invalidate();
- area4.setText(dummy);
- area4.invalidate();
return;
}
if (indexSize <= 2)
{
- // ã\83©ã\83\83ã\83\97ã\81\8cï¼\92つとれた場合
+ // ã\83©ã\83\83ã\83\97ã\81\8cï¼\91つとれた場合
long time = (elapsedTimes.get(indexSize - 1) - elapsedTimes.get(indexSize - 2));
String elapsedTime = "[" + (timerCounter.getElapsedCount() - 1) + "] " + MyTimerCounter.getTimeString(time);
area1.setText(elapsedTime);
area1.invalidate();
- area2.setText(getElapsedTime());
+ area2.setText(dummy);
area2.invalidate();
area3.setText(dummy);
area3.invalidate();
- area4.setText(dummy);
- area4.invalidate();
return;
}
if (indexSize <= 3)
area1.invalidate();
area2.setText(elapsedTime2);
area2.invalidate();
- area3.setText(getElapsedTime());
+ area3.setText(dummy);
area3.invalidate();
- area4.setText(dummy);
- area4.invalidate();
return;
}
area2.invalidate();
area3.setText(elapsedTime3);
area3.invalidate();
- area4.setText(getElapsedTime());
- area4.invalidate();
}
}
- /**
+ /*
*
*
*/
+/*
private String getElapsedTime()
{
String elapsedTime = "";
}
return (elapsedTime);
}
+*/
}
package net.osdn.gokigen.joggingtimer;
-import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
-import android.text.format.DateFormat;
import android.os.Parcel;
import android.os.Parcelable;
import android.os.SystemClock;
import android.Manifest;
import android.content.pm.PackageManager;
-import android.os.PowerManager;
import android.os.Vibrator;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
import android.widget.ImageButton;
import android.widget.TextView;
-import static android.content.Context.POWER_SERVICE;
import static android.content.Context.VIBRATOR_SERVICE;
/**
ImageButton btn3 = activity.findViewById(R.id.btn3);
btn3.setOnClickListener(clickListener);
btn3.setOnLongClickListener(clickListener);
+
+ TextView main = activity.findViewById(R.id.main_counter);
+ main.setOnClickListener(clickListener);
+ main.setOnLongClickListener(clickListener);
}
catch (Exception e)
{
android:layout_height="wrap_content"
android:textAlignment="center"
android:textSize="15pt"
+ android:focusable="true"
+ android:clickable="true"
android:text="@string/counter" />
android:layout_alignParentBottom="true"
android:clickable="true"
android:focusable="true"
- android:scaleType="fitCenter"
+ android:scaleType="fitEnd"
android:visibility="visible"
android:contentDescription="@string/blank"
android:src="@drawable/ic_play_arrow_black_24dp"
android:textColor="@color/dark_grey"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:textAlignment="textStart"
+ android:textAlignment="textEnd"
android:layout_alignStart="@id/main_counter"
android:layout_below="@id/main_counter"
android:textSize="8pt"
android:layout_height="wrap_content"
android:textAlignment="center"
android:textSize="12pt"
+ android:focusable="true"
+ android:clickable="true"
android:text="@string/counter" />
<ImageButton
android:layout_alignParentBottom="true"
android:clickable="true"
android:focusable="true"
- android:scaleType="fitCenter"
+ android:scaleType="fitEnd"
android:visibility="visible"
android:contentDescription="@string/blank"
android:src="@drawable/ic_play_arrow_black_24dp"
android:textColor="@color/dark_grey"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:textAlignment="textStart"
+ android:textAlignment="textEnd"
android:layout_alignStart="@id/main_counter"
android:layout_below="@id/main_counter"
android:textSize="7pt"