murakumo_URLコピペボタンの作成完了 #56
|
@ -1,6 +1,9 @@
|
||||||
package com.example.oplogy;
|
package com.example.oplogy;
|
||||||
|
|
||||||
import android.app.ProgressDialog;
|
import android.app.ProgressDialog;
|
||||||
|
import android.content.ClipData;
|
||||||
|
import android.content.ClipboardManager;
|
||||||
|
import android.content.Context;
|
||||||
import android.content.DialogInterface;
|
import android.content.DialogInterface;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
|
@ -27,19 +30,20 @@ import java.util.concurrent.Executors;
|
||||||
|
|
||||||
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
|
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
|
||||||
|
|
||||||
|
// formコピー用のURL
|
||||||
|
private static final String URL_TO_COPY = "https://docs.google.com/forms/d/e/1FAIpQLScKI_ca01nO7die7SqZyThiqa7NB7gcucMJtiV_-sc3eZX6KQ/viewform";
|
||||||
// ダイアログの宣言
|
// ダイアログの宣言
|
||||||
private AlertDialog alertDialog;
|
private AlertDialog alertDialog;
|
||||||
|
|
||||||
// ID作成のTextViewとImageView
|
// ID作成のTextViewとImageView
|
||||||
private TextView creatUUID;
|
private TextView creatUUID;
|
||||||
private ImageView imageUuid;
|
private ImageView imageUuid;
|
||||||
|
|
||||||
|
|
||||||
// セットアップのTextViewとImageView
|
// セットアップのTextViewとImageView
|
||||||
private TextView setUp;
|
private TextView setUp;
|
||||||
private ImageView imageSetup;
|
private ImageView imageSetup;
|
||||||
|
// formコピー用のボタン
|
||||||
// セットアップのTextViewとImageView
|
private TextView formURL;
|
||||||
|
private ImageView imageFormURL;
|
||||||
|
// ルート作成のTextViewとImageView
|
||||||
private TextView root;
|
private TextView root;
|
||||||
private ImageView imageRoot;
|
private ImageView imageRoot;
|
||||||
// 提出状況のTextViewとImageView
|
// 提出状況のTextViewとImageView
|
||||||
|
@ -72,6 +76,13 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
|
||||||
imageSetup = findViewById(R.id.imageSetup);
|
imageSetup = findViewById(R.id.imageSetup);
|
||||||
imageSetup.setOnClickListener(this);
|
imageSetup.setOnClickListener(this);
|
||||||
|
|
||||||
|
// formコピー用のインテント
|
||||||
|
formURL = findViewById(R.id.formURL);
|
||||||
|
formURL.setOnClickListener(this);
|
||||||
|
imageFormURL = findViewById(R.id.imageFormURL);
|
||||||
|
imageFormURL.setOnClickListener(this);
|
||||||
|
|
||||||
|
|
||||||
// ルート作成用のインテント
|
// ルート作成用のインテント
|
||||||
root = findViewById(R.id.root);
|
root = findViewById(R.id.root);
|
||||||
root.setOnClickListener(this);
|
root.setOnClickListener(this);
|
||||||
|
@ -134,6 +145,16 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
|
||||||
finish(); // 画面遷移後元の状態に戻す
|
finish(); // 画面遷移後元の状態に戻す
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// formコピー用のクリック処理
|
||||||
|
if (view == formURL) {
|
||||||
|
imageFormURL.setImageResource(R.drawable.ischecked_uuid);
|
||||||
|
copyUrlToClipboard(URL_TO_COPY);
|
||||||
|
}
|
||||||
|
if (view == imageFormURL) {
|
||||||
|
imageFormURL.setImageResource(R.drawable.ischecked_uuid);
|
||||||
|
copyUrlToClipboard(URL_TO_COPY);
|
||||||
|
}
|
||||||
|
|
||||||
// ルート作成のクリック処理
|
// ルート作成のクリック処理
|
||||||
if (view == root) {
|
if (view == root) {
|
||||||
imageRoot.setImageResource(R.drawable.pin);
|
imageRoot.setImageResource(R.drawable.pin);
|
||||||
|
@ -162,6 +183,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//ID作成、表示に関する処理
|
//ID作成、表示に関する処理
|
||||||
private void showUUIDYesNoDialog() {
|
private void showUUIDYesNoDialog() {
|
||||||
firestoreReception_classIdDatabase = new FirestoreReception_classIdDatabase();
|
firestoreReception_classIdDatabase = new FirestoreReception_classIdDatabase();
|
||||||
|
@ -280,6 +302,21 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
|
||||||
}, executorService).whenComplete((result, throwable) -> executorService.shutdown());
|
}, executorService).whenComplete((result, throwable) -> executorService.shutdown());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//クリップボードにURLをコピーする処理
|
||||||
|
private void copyUrlToClipboard(String url) {
|
||||||
|
try {
|
||||||
|
ClipboardManager clipboard = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
|
||||||
|
ClipData clip = ClipData.newPlainText("URL", url);
|
||||||
|
if (clipboard != null) {
|
||||||
|
clipboard.setPrimaryClip(clip);
|
||||||
|
Toast.makeText(this, "GoogleFormのURLをコピーしました", Toast.LENGTH_SHORT).show();
|
||||||
|
} else {
|
||||||
|
Toast.makeText(this, "エラー コピーできませんでした", Toast.LENGTH_SHORT).show();
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
Toast.makeText(this, "Error copying URL: " + e.getMessage(), Toast.LENGTH_SHORT).show();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//ルート作成の非同期処理
|
//ルート作成の非同期処理
|
||||||
private void fetchDataAndCreateRoute() {
|
private void fetchDataAndCreateRoute() {
|
||||||
|
@ -342,6 +379,7 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//final宣言することによって、スレッドセーフになる(ラムダ式内で使えるようにする)
|
||||||
final List<MyDataClass> finalMyDataList = myDataList;
|
final List<MyDataClass> finalMyDataList = myDataList;
|
||||||
CreateSchedule createSchedule = new CreateSchedule(MainActivity.this);
|
CreateSchedule createSchedule = new CreateSchedule(MainActivity.this);
|
||||||
String startPointLatLngString = createSchedule.receiveData(myDataList, getApplicationContext());
|
String startPointLatLngString = createSchedule.receiveData(myDataList, getApplicationContext());
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:weightSum="20"
|
android:weightSum="20"
|
||||||
tools:context=".MainActivity">
|
tools:context=".MainActivity">
|
||||||
|
|
||||||
<Space
|
<Space
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
@ -18,16 +18,15 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:layout_weight="3"
|
android:layout_weight="3"
|
||||||
android:weightSum="2"
|
android:orientation="horizontal"
|
||||||
android:orientation="horizontal">
|
android:weightSum="2">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/imageUuid"
|
android:id="@+id/imageUuid"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:src="@drawable/checked_image"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
/>
|
android:src="@drawable/checked_image" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/creatUUID"
|
android:id="@+id/creatUUID"
|
||||||
|
@ -37,8 +36,7 @@
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:gravity="left"
|
android:gravity="left"
|
||||||
android:text="ID作成"
|
android:text="ID作成"
|
||||||
android:textSize="50dp"
|
android:textSize="50dp" />
|
||||||
/>
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
@ -48,63 +46,89 @@
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:layout_weight="3"
|
android:layout_weight="3"
|
||||||
android:weightSum="2"
|
android:orientation="horizontal"
|
||||||
android:orientation="horizontal">
|
android:weightSum="2">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/imageSetup"
|
android:id="@+id/imageSetup"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:src="@drawable/checked_image"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
/>
|
android:src="@drawable/checked_image" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/setUp"
|
android:id="@+id/setUp"
|
||||||
android:layout_width="99dp"
|
android:layout_width="99dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="セットアップ"
|
android:layout_gravity="center"
|
||||||
android:textSize="40dp"
|
|
||||||
android:textStyle="bold"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:gravity="left"
|
android:gravity="left"
|
||||||
android:layout_gravity="center"/>
|
android:text="セットアップ"
|
||||||
|
android:textSize="40dp"
|
||||||
|
android:textStyle="bold" />
|
||||||
|
</LinearLayout>
|
||||||
|
|
||||||
|
<!-- フォームのURLのレイアウト-->
|
||||||
|
|
||||||
|
<LinearLayout
|
||||||
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="0dp"
|
||||||
|
android:layout_weight="3"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:weightSum="2">
|
||||||
|
|
||||||
|
<ImageView
|
||||||
|
android:id="@+id/imageFormURL"
|
||||||
|
android:layout_width="0dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:src="@drawable/checked_image" />
|
||||||
|
|
||||||
|
<TextView
|
||||||
|
android:id="@+id/formURL"
|
||||||
|
android:layout_width="99dp"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_gravity="center"
|
||||||
|
android:layout_weight="1"
|
||||||
|
android:gravity="left"
|
||||||
|
android:text="GoogleformのURL"
|
||||||
|
android:textSize="40dp"
|
||||||
|
android:textStyle="bold" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
<Space
|
<Space
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="3"/>
|
android:layout_weight="2" />
|
||||||
|
|
||||||
|
|
||||||
<!-- ルート表示のレイアウト-->
|
<!-- ルート表示のレイアウト-->
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="400dp"
|
android:layout_width="400dp"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:layout_weight="3"
|
|
||||||
android:weightSum="2"
|
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
android:orientation="horizontal">
|
android:layout_weight="3"
|
||||||
|
android:orientation="horizontal"
|
||||||
|
android:weightSum="2">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/imageRoot"
|
android:id="@+id/imageRoot"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:src="@drawable/pin"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
/>
|
android:src="@drawable/pin" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/root"
|
android:id="@+id/root"
|
||||||
android:layout_width="99dp"
|
android:layout_width="99dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="ルート表示"
|
android:layout_gravity="center"
|
||||||
android:textSize="40dp"
|
|
||||||
android:textStyle="bold"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:gravity="left"
|
android:gravity="left"
|
||||||
android:layout_gravity="center"/>
|
android:text="ルート表示"
|
||||||
|
android:textSize="40dp"
|
||||||
|
android:textStyle="bold" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
@ -112,35 +136,29 @@
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="350dp"
|
android:layout_width="350dp"
|
||||||
android:layout_height="0dp"
|
android:layout_height="0dp"
|
||||||
android:layout_weight="3"
|
|
||||||
android:layout_gravity="center"
|
android:layout_gravity="center"
|
||||||
android:weightSum="2"
|
android:layout_weight="3"
|
||||||
android:orientation="horizontal">
|
android:orientation="horizontal"
|
||||||
|
android:weightSum="2">
|
||||||
|
|
||||||
<ImageView
|
<ImageView
|
||||||
android:id="@+id/imageSubmission"
|
android:id="@+id/imageSubmission"
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:src="@drawable/submission"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
/>
|
android:src="@drawable/submission" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/submission"
|
android:id="@+id/submission"
|
||||||
android:layout_width="99dp"
|
android:layout_width="99dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:text="提出状況"
|
android:layout_gravity="center"
|
||||||
android:textSize="40dp"
|
|
||||||
android:textStyle="bold"
|
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:gravity="left"
|
android:gravity="left"
|
||||||
android:layout_gravity="center"/>
|
android:text="提出状況"
|
||||||
|
android:textSize="40dp"
|
||||||
|
android:textStyle="bold" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
Loading…
Reference in New Issue
Block a user