diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 881e9a1..d137616 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -2,29 +2,30 @@ - - - + android:theme="@style/Theme.Acanthus" + android:usesCleartextTraffic="true"> + + - + android:label="@string/title_activity_main" /> + + + \ No newline at end of file diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/Login/LoginScreenActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/Login/LoginScreenActivity.java index 20a4c69..08a410b 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/Login/LoginScreenActivity.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/Login/LoginScreenActivity.java @@ -20,6 +20,7 @@ import org.ntlab.acanthus_client.entities.AccountTokenJson; import org.ntlab.acanthus_client.resources.accounts.LoginRest; import org.ntlab.acanthus_client.views.MainActivity; +import org.ntlab.acanthus_client.views.Paint.PaintActivity; import retrofit2.Call; import retrofit2.Callback; diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/Main_menu_ui/edit/EditFragment.java b/app/src/main/java/org/ntlab/acanthus_client/views/Main_menu_ui/edit/EditFragment.java index d0f7aa7..23468b7 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/Main_menu_ui/edit/EditFragment.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/Main_menu_ui/edit/EditFragment.java @@ -1,12 +1,17 @@ package org.ntlab.acanthus_client.views.Main_menu_ui.edit; +import android.content.Intent; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; +import android.widget.Button; import android.widget.TextView; -import org.ntlab.acanthus_client.databinding.FragmentMakeBinding; + +import org.ntlab.acanthus_client.R; +import org.ntlab.acanthus_client.databinding.FragmentEditBinding; +import org.ntlab.acanthus_client.views.Paint.PaintActivity; import androidx.annotation.NonNull; import androidx.annotation.Nullable; @@ -17,14 +22,14 @@ public class EditFragment extends Fragment { private EditViewModel editViewModel; - private FragmentMakeBinding binding; + private FragmentEditBinding binding; public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { editViewModel = new ViewModelProvider(this).get(EditViewModel.class); - binding = FragmentMakeBinding.inflate(inflater, container, false); + binding = FragmentEditBinding.inflate(inflater, container, false); View root = binding.getRoot(); final TextView textView = binding.textMake; @@ -42,4 +47,16 @@ super.onDestroyView(); binding = null; } + @Override + public void onViewCreated(View view, @Nullable Bundle savedInstanceState) { + super.onViewCreated(view, savedInstanceState); + Button appButton = view.findViewById(R.id.Paint_button); + appButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Intent intent = new Intent(getActivity(), PaintActivity.class); + startActivity(intent); + } + }); + } } \ No newline at end of file diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/Paint/MyPaint.java b/app/src/main/java/org/ntlab/acanthus_client/views/Paint/MyPaint.java new file mode 100644 index 0000000..d13d2cb --- /dev/null +++ b/app/src/main/java/org/ntlab/acanthus_client/views/Paint/MyPaint.java @@ -0,0 +1,74 @@ +package org.ntlab.acanthus_client.views.Paint; + +import android.content.Context; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.graphics.Path; +import android.util.AttributeSet; +import android.view.MotionEvent; +import android.view.View; + +import androidx.annotation.Nullable; + +public class MyPaint extends View { + + private Path path; + private Paint paint; + + public MyPaint(Context context, @Nullable AttributeSet attrs) { + super(context, attrs); + + //1)コンストラクタ(≒必需品) + path = new Path();//線を引いたり、図形を描いたり、要するにグラフィック + + paint = new Paint();//筆の種類 + paint.setColor(Color.RED);//色の指定 + paint.setStyle(Paint.Style.STROKE);//線をひく + paint.setStrokeWidth(20);//幅 + + } + + //2)onDraw(描画の準備/プロペラが回りだした状態) + + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + canvas.drawPath(path,paint); + } + + + //3)実際の操縦 (条件分岐:押したとき、動かしたとき、放した時) + + @Override + public boolean onTouchEvent(MotionEvent event) { + //(3-1)座標を取得(x座標、y座標) + float x = event.getX(); + float y = event.getY(); + + //(3-2)タッチの処理 + switch (event.getAction()){ + case MotionEvent.ACTION_DOWN: + path.moveTo(x,y); + invalidate(); + break; + case MotionEvent.ACTION_MOVE: + path.lineTo(x,y); + invalidate(); + break; + case MotionEvent.ACTION_UP: + break; + } + + //return super.onTouchEvent(event); + return true; + } + + + //4)クリア処理 + public void clearCanvas(){ + path.reset(); + invalidate(); + } + +} \ No newline at end of file diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/Paint/PaintActivity.java b/app/src/main/java/org/ntlab/acanthus_client/views/Paint/PaintActivity.java new file mode 100644 index 0000000..b602205 --- /dev/null +++ b/app/src/main/java/org/ntlab/acanthus_client/views/Paint/PaintActivity.java @@ -0,0 +1,29 @@ +package org.ntlab.acanthus_client.views.Paint; + +import androidx.appcompat.app.AppCompatActivity; + +import android.graphics.PorterDuff; +import android.os.Bundle; +import android.view.View; + +import org.ntlab.acanthus_client.R; + +public class PaintActivity extends AppCompatActivity { + + private MyPaint myPaint; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_paint); + + //6)描画のid取得 + myPaint =(MyPaint) findViewById(R.id.myCanvas); + } + + //5)クリアメソッド(4)呼び出し + public void onClear(View view){ + myPaint.clearCanvas(); + } + +} \ No newline at end of file diff --git a/app/src/main/res/layout/activity_paint.xml b/app/src/main/res/layout/activity_paint.xml new file mode 100644 index 0000000..cce93a1 --- /dev/null +++ b/app/src/main/res/layout/activity_paint.xml @@ -0,0 +1,26 @@ + + + + + + +