From 233467ad1c7f0cdd596ca33f3ffdd9db118652ac Mon Sep 17 00:00:00 2001 From: ryo628 Date: Mon, 26 Sep 2016 01:40:14 +0900 Subject: [PATCH 01/51] =?UTF-8?q?UI=E5=90=91=E4=B8=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 裏画面(楽器メニュー)いい感じに。 OptionとMainMenuはxmlから叩いた。 --- .../muse/muse_performance/GraphicView.java | 96 +++++++++++++------ .../muse/muse_performance/Sound_Back.java | 43 +++++---- .../app/src/main/res/drawable/button.xml | 14 +++ .../src/main/res/drawable/button_normal.xml | 17 ++++ .../src/main/res/drawable/button_pressed.xml | 17 ++++ .../app/src/main/res/drawable/progress.xml | 21 ++++ .../app/src/main/res/drawable/thumb.xml | 28 ++++++ .../src/main/res/layout/activity_mainmenu.xml | 8 +- .../src/main/res/layout/activity_option.xml | 21 +++- 9 files changed, 209 insertions(+), 56 deletions(-) create mode 100644 Muse_performance/app/src/main/res/drawable/button.xml create mode 100644 Muse_performance/app/src/main/res/drawable/button_normal.xml create mode 100644 Muse_performance/app/src/main/res/drawable/button_pressed.xml create mode 100644 Muse_performance/app/src/main/res/drawable/progress.xml create mode 100644 Muse_performance/app/src/main/res/drawable/thumb.xml diff --git a/Muse_performance/app/src/main/java/muse/muse_performance/GraphicView.java b/Muse_performance/app/src/main/java/muse/muse_performance/GraphicView.java index bf7beaa..1ac25f1 100644 --- a/Muse_performance/app/src/main/java/muse/muse_performance/GraphicView.java +++ b/Muse_performance/app/src/main/java/muse/muse_performance/GraphicView.java @@ -24,7 +24,9 @@ public class GraphicView extends View int terminal_height = display.getHeight(); // モニタ縦 //画像読み込み - private int bSize = 100; + private static int sSize = 100; + private int bSize = 200; + //透過処理 public Bitmap ClearBack( Bitmap bmp ) { // 縦横取得 @@ -55,15 +57,18 @@ public Bitmap ClearBack( Bitmap bmp ) return bmp; } Resources res = getResources(); - Bitmap bigTab_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.bigtab ), bSize, bSize, false ) ); - Bitmap tab_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.tab ), bSize, bSize, false ) ); - Bitmap chick_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.chick ), bSize, bSize, false ) ); - Bitmap clap_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.clap ), bSize, bSize, false ) ); - Bitmap drum_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.drum ), bSize, bSize, false ) ); - Bitmap frog_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.frog ), bSize, bSize, false ) ); - Bitmap fue_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.fue ), bSize, bSize, false ) ); - Bitmap guitar_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.guitar ), bSize, bSize, false ) ); - Bitmap piano_bmp = ClearBack( Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.piano ), bSize, bSize, false ) ); + Bitmap bigTab_bmp = /*ClearBack( */Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.bigtab ), 280, 1100, false ) /*)*/; + Bitmap tab_bmp = /*ClearBack(*/ Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.tab ), 70, 1100, false ) /*)*/; + Bitmap chick_bmp = /*ClearBack(*/ Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.chick ), sSize, sSize, false ) /*)*/; + Bitmap clap_bmp = /*ClearBack(*/ Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.clap ), sSize, sSize, false ) /*)*/; + Bitmap drum_bmp = /*ClearBack(*/ Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.drum ), sSize, sSize, false ) /*)*/; + Bitmap frog_bmp = /*ClearBack(*/ Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.frog ), sSize, sSize, false ) /*)*/; + Bitmap fue_bmp = /*ClearBack(*/ Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.fue ), sSize, sSize, false ) /*)*/; + Bitmap guitar_bmp = /*ClearBack(*/ Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.guitar ), sSize, sSize, false ) /*)*/; + Bitmap piano_bmp = /*ClearBack(*/ Bitmap.createScaledBitmap( BitmapFactory.decodeResource( res, R.drawable.piano ), sSize, sSize, false ) /*)*/; + Bitmap BigChick_bmp = Bitmap.createScaledBitmap( chick_bmp, bSize, bSize,false ); + Bitmap BigClap_bmp = Bitmap.createScaledBitmap( clap_bmp, bSize, bSize, false ); + Bitmap BigFrog_bmp = Bitmap.createScaledBitmap( frog_bmp, bSize, bSize, false ); //画面の位置情報変数 private int r = 0; //半径 @@ -79,9 +84,20 @@ public Bitmap ClearBack( Bitmap bmp ) private float fxpoint[]={-1,-1,-1,-1}; private float fypoint[]={-1,-1,-1,-1}; + //オブジェクトタブのスクロールの一番上 + private int scrollTop = 0; + public void setScrollTop(int i){ this.scrollTop = i; } + public int getScrollTop(){ return this.scrollTop; } + + //表裏判定 private boolean scene; + //オブジェクトタブのONとOFFの判定 + private boolean TabFlag = true; + public void TabFlagON(){ this.TabFlag = !this.TabFlag; } //反応したらひっくり返す + public boolean getTabFlag(){ return this.TabFlag; } + //音がはねるのを防ぐ private int boundcheck[] = {0,0,0,0,0}; @@ -313,8 +329,6 @@ protected void onDraw(Canvas canvas) ////白 canvas.drawColor( Color.rgb( graTopcolorR , graTopcolorG, graTopcolorB ) ); - frog_bmp = ClearBack( frog_bmp ); - //Paintオブジェクトの生成 Paint paint = new Paint(); @@ -463,37 +477,59 @@ else if( flicklog[3] == 56 ) { { // 基本表示 canvas.drawBitmap( frog_bmp, 0, 0, paint );// オプション : TODO - canvas.drawBitmap( frog_bmp, terminal_width - bSize, 0, paint );// 裏画面メニュー : TODO + canvas.drawBitmap( frog_bmp, terminal_width - sSize, 0, paint );// 裏画面メニュー : TODO canvas.drawBitmap( guitar_bmp, 460, 770, paint ); // 左上表示 canvas.drawBitmap( fue_bmp, 660, 770, paint ); // 右上表示 canvas.drawBitmap( piano_bmp, 460, 970, paint ); // 左下表示 canvas.drawBitmap( drum_bmp, 660, 970, paint ); // 右下表示 // 楽器配置 - if( fxpoint[0] > 0 && fypoint[0] > 0 ) canvas.drawBitmap( guitar_bmp, fxpoint[0], fypoint[0], paint ); - if( fxpoint[1] > 0 && fypoint[1] > 0 ) canvas.drawBitmap( fue_bmp, fxpoint[1], fypoint[1], paint ); - if( fxpoint[2] > 0 && fypoint[2] > 0 ) canvas.drawBitmap( piano_bmp, fxpoint[2], fypoint[2], paint ); - if( fxpoint[3] > 0 && fypoint[3] > 0 ) canvas.drawBitmap( drum_bmp, fxpoint[3], fypoint[3], paint ); + if( fxpoint[0] > 0 && fypoint[0] > 0 ) canvas.drawBitmap( guitar_bmp, fxpoint[0] - 30, fypoint[0] - 30, paint ); + if( fxpoint[1] > 0 && fypoint[1] > 0 ) canvas.drawBitmap( fue_bmp, fxpoint[1] - 30, fypoint[1] - 30, paint ); + if( fxpoint[2] > 0 && fypoint[2] > 0 ) canvas.drawBitmap( piano_bmp, fxpoint[2] - 30, fypoint[2] - 30, paint ); + if( fxpoint[3] > 0 && fypoint[3] > 0 ) canvas.drawBitmap( drum_bmp, fxpoint[3] - 30, fypoint[3] - 30, paint ); } // 裏画面メニュー else { - canvas.drawBitmap( frog_bmp, terminal_width - bSize, 0, paint ); // 表への遷移ボタン - canvas.drawBitmap( frog_bmp, 0, 300, paint ); // 打楽器音1 - canvas.drawBitmap( chick_bmp, 0, 450, paint ); // 打楽器音2 - canvas.drawBitmap( frog_bmp, 0, 600, paint ); // 打楽器音3 - canvas.drawBitmap( clap_bmp, 0, 750, paint ); // 打楽器音4 - canvas.drawBitmap( frog_bmp, 0, 900, paint ); // 打楽器音5 - canvas.drawBitmap( drum_bmp, 0, 1070, paint ); // 全消去 - + canvas.drawBitmap( frog_bmp, terminal_width - sSize, 0, paint ); // 表への遷移ボタン + //設置オブジェクト選択バー表示 + if(TabFlag) { + canvas.drawBitmap(bigTab_bmp, 0 , 300,paint); + for(int i=0;i<4;i++){ + switch( (scrollTop + i ) % 6 ) { + case 0: + canvas.drawBitmap(BigFrog_bmp, 7, 370 + 250*i, paint); // 打楽器音1 + break; + case 1: + canvas.drawBitmap(BigChick_bmp, 7, 370 + 250*i, paint); // 打楽器音2 + break; + case 2: + canvas.drawBitmap(BigFrog_bmp, 7, 370 + 250*i, paint); // 打楽器音3 + break; + case 3: + canvas.drawBitmap(BigClap_bmp, 7, 370 + 250*i, paint); // 打楽器音4 + break; + case 4: + canvas.drawBitmap(BigFrog_bmp, 7, 370 + 250*i, paint); // 打楽器音5 + break; + case 5: + canvas.drawBitmap(drum_bmp, 7, 370 + 250*i, paint); // 全消去 + break; + } + } + } + else{ + canvas.drawBitmap(tab_bmp, 0 , 300, paint); + } } // 置かれた楽器&打楽器画像表示 - if( bxpoint[0] > 0 && bypoint[0] > 0 ) canvas.drawBitmap( frog_bmp, bxpoint[0], bypoint[0], paint ); - if( bxpoint[1] > 0 && bypoint[1] > 0 ) canvas.drawBitmap( chick_bmp, bxpoint[1], bypoint[1], paint ); - if( bxpoint[2] > 0 && bypoint[2] > 0 ) canvas.drawBitmap( frog_bmp, bxpoint[2], bypoint[2], paint ); - if( bxpoint[3] > 0 && bypoint[3] > 0 ) canvas.drawBitmap( clap_bmp, bxpoint[3], bypoint[3], paint ); - if( bxpoint[4] > 0 && bypoint[4] > 0 ) canvas.drawBitmap( frog_bmp, bxpoint[4], bypoint[4], paint ); + if( bxpoint[0] > 0 && bypoint[0] > 0 ) canvas.drawBitmap( frog_bmp, bxpoint[0] - 30, bypoint[0] - 30, paint ); + if( bxpoint[1] > 0 && bypoint[1] > 0 ) canvas.drawBitmap( chick_bmp, bxpoint[1] - 30, bypoint[1] - 30, paint ); + if( bxpoint[2] > 0 && bypoint[2] > 0 ) canvas.drawBitmap( frog_bmp, bxpoint[2] - 30, bypoint[2] - 30, paint ); + if( bxpoint[3] > 0 && bypoint[3] > 0 ) canvas.drawBitmap( clap_bmp, bxpoint[3] - 30, bypoint[3] - 30, paint ); + if( bxpoint[4] > 0 && bypoint[4] > 0 ) canvas.drawBitmap( frog_bmp, bxpoint[4] - 30, bypoint[4] - 30, paint ); // 打楽器音設定 for( int i = 0; i < bxpoint.length; i++ ) ObjectMusic( i, canvas, paint ); diff --git a/Muse_performance/app/src/main/java/muse/muse_performance/Sound_Back.java b/Muse_performance/app/src/main/java/muse/muse_performance/Sound_Back.java index ee3cfbf..ff5630c 100644 --- a/Muse_performance/app/src/main/java/muse/muse_performance/Sound_Back.java +++ b/Muse_performance/app/src/main/java/muse/muse_performance/Sound_Back.java @@ -96,23 +96,23 @@ public boolean onTouchEvent(MotionEvent motionEvent) case MotionEvent.ACTION_UP://離した時 Log.d("", "ACTION_UP"); - if(getx>1070 && gety<140){ + if(getx>1070 && gety<140) { Intent intent2 = new Intent(); - intent2.putExtra("RES_S1",sound[0]);//データを返す - intent2.putExtra("RES_S2",sound[1]); - intent2.putExtra("RES_S3",sound[2]); - intent2.putExtra("RES_S4",sound[3]); - intent2.putExtra("RES_BEAT",beat); - intent2.putExtra("RES_SONGNO",songNo); - setResult(RESULT_OK,intent2); + intent2.putExtra("RES_S1", sound[0]);//データを返す + intent2.putExtra("RES_S2", sound[1]); + intent2.putExtra("RES_S3", sound[2]); + intent2.putExtra("RES_S4", sound[3]); + intent2.putExtra("RES_BEAT", beat); + intent2.putExtra("RES_SONGNO", songNo); + setResult(RESULT_OK, intent2); finish();//表に戻る } - - else if(getx>nowx[0]+20 && getxnowy[0]+60 && getynowx[0]-50 && getxnowy[0]-50 && getynowx[1]+20 && getxnowy[1]+60 && getynowx[1]-50 && getxnowy[1]+60 && getynowx[4]+20 && getxnowy[4]+60 && gety330 && gety<1079){ - edit=((int)gety-330)/150;//編集する画像の選択 + //エディットモニタ + else if(getx<280 && gety>340 && gety<1450 && graphicView.getTabFlag()){ + if(getx>230){graphicView.TabFlagON();} + else if(gety < 400){ graphicView.setScrollTop((graphicView.getScrollTop() + 5) % 6); } + else if(gety > 1400){ graphicView.setScrollTop((graphicView.getScrollTop() + 1) % 6); } + else{ + edit = ( ((int)gety-400)/255 + graphicView.getScrollTop() ) % 6 ;//編集する画像の選択 + } } - - else if(getx<60 && gety>1100 && gety<1200){ + //全消しオブジェクト + /*else if(getx<60 && gety>1100 && gety<1200){ for(int i=0;i<5;i++) {//全画像消去 graphicView.setBxpoint(i, -1); graphicView.setBypoint(i, -1); } + }*/ + //オブジェクト設置タブの開閉処理 + else if(getx<60 && gety>340 && gety<1450 && !graphicView.getTabFlag()){ + graphicView.TabFlagON(); } - + //配置 else{ graphicView.setBxpoint(edit,getx-20);//タッチ位置に画像配置 graphicView.setBypoint(edit,gety-60); diff --git a/Muse_performance/app/src/main/res/drawable/button.xml b/Muse_performance/app/src/main/res/drawable/button.xml new file mode 100644 index 0000000..00e4026 --- /dev/null +++ b/Muse_performance/app/src/main/res/drawable/button.xml @@ -0,0 +1,14 @@ + + + + + + + + \ No newline at end of file diff --git a/Muse_performance/app/src/main/res/drawable/button_normal.xml b/Muse_performance/app/src/main/res/drawable/button_normal.xml new file mode 100644 index 0000000..9cfc2c9 --- /dev/null +++ b/Muse_performance/app/src/main/res/drawable/button_normal.xml @@ -0,0 +1,17 @@ + + + + + + + \ No newline at end of file diff --git a/Muse_performance/app/src/main/res/drawable/button_pressed.xml b/Muse_performance/app/src/main/res/drawable/button_pressed.xml new file mode 100644 index 0000000..d25b0cb --- /dev/null +++ b/Muse_performance/app/src/main/res/drawable/button_pressed.xml @@ -0,0 +1,17 @@ + + + + + + + \ No newline at end of file diff --git a/Muse_performance/app/src/main/res/drawable/progress.xml b/Muse_performance/app/src/main/res/drawable/progress.xml new file mode 100644 index 0000000..63ef9ce --- /dev/null +++ b/Muse_performance/app/src/main/res/drawable/progress.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Muse_performance/app/src/main/res/drawable/thumb.xml b/Muse_performance/app/src/main/res/drawable/thumb.xml new file mode 100644 index 0000000..6e5550e --- /dev/null +++ b/Muse_performance/app/src/main/res/drawable/thumb.xml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Muse_performance/app/src/main/res/layout/activity_mainmenu.xml b/Muse_performance/app/src/main/res/layout/activity_mainmenu.xml index 86c883b..0c7e701 100644 --- a/Muse_performance/app/src/main/res/layout/activity_mainmenu.xml +++ b/Muse_performance/app/src/main/res/layout/activity_mainmenu.xml @@ -4,10 +4,6 @@ android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" - android:paddingBottom="@dimen/activity_vertical_margin" - android:paddingLeft="@dimen/activity_horizontal_margin" - android:paddingRight="@dimen/activity_horizontal_margin" - android:paddingTop="@dimen/activity_vertical_margin" android:background="#ddffff" tools:context="muse.muse_performance.MainMenu"> @@ -17,6 +13,7 @@ android:id="@+id/send_button1" android:textSize="60sp" android:text="演奏開始!" + android:background="@drawable/button" android:layout_marginTop="180dp" android:layout_marginLeft="40dp" android:layout_marginRight="40dp"/> @@ -26,7 +23,8 @@ android:layout_height="wrap_content" android:id="@+id/send_button2" android:textSize="60sp" - android:text="せってい" + android:text="設定" + android:background="@drawable/button" android:layout_marginTop="240dp" android:layout_marginLeft="40dp" android:layout_marginRight="40dp" /> diff --git a/Muse_performance/app/src/main/res/layout/activity_option.xml b/Muse_performance/app/src/main/res/layout/activity_option.xml index 27775f4..505a284 100644 --- a/Muse_performance/app/src/main/res/layout/activity_option.xml +++ b/Muse_performance/app/src/main/res/layout/activity_option.xml @@ -13,6 +13,7 @@ @@ -23,12 +24,15 @@ android:id="@+id/songTextView" android:layout_margin="10dp" android:textSize="20sp" + android:paddingTop="40dp" android:textColor="#000000"/> + android:drawSelectorOnTop="true" + android:longClickable="false" + /> + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:max="255" + android:progressDrawable="@drawable/progress" + android:thumb="@drawable/thumb" + android:paddingRight="40dp" + android:paddingLeft="20dp"/>