OSDN Git Service

画像部を長押しすることで、カレンダーを開けるようにしてみた。
authorMRSa <mrsa@myad.jp>
Thu, 21 Mar 2019 15:05:55 +0000 (00:05 +0900)
committerMRSa <mrsa@myad.jp>
Thu, 21 Mar 2019 15:05:55 +0000 (00:05 +0900)
app/src/main/java/net/osdn/gokigen/pkremote/MainActivity.java
app/src/main/java/net/osdn/gokigen/pkremote/calendar/CalendarFragment.java
app/src/main/java/net/osdn/gokigen/pkremote/logcat/LogCatFragment.java
app/src/main/java/net/osdn/gokigen/pkremote/playback/ImageGridViewFragment.java
app/src/main/java/net/osdn/gokigen/pkremote/scene/CameraSceneUpdater.java
app/src/main/java/net/osdn/gokigen/pkremote/scene/IChangeScene.java

index ffaec6c..33fdc83 100644 (file)
@@ -51,7 +51,6 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
         public boolean onNavigationItemSelected(@NonNull MenuItem item) {
             switch (item.getItemId()) {
                 case R.id.navigation_photo_library:
-                    //
                     scenceUpdater.changeScenceToImageList();
                     return (true);
                 case R.id.navigation_calendar:
@@ -72,6 +71,27 @@ public class MainActivity extends AppCompatActivity implements View.OnClickListe
      *
      */
     @Override
+    public void onBackPressed()
+    {
+        //Log.v(TAG, "onBackPressed()");
+        super.onBackPressed();
+        runOnUiThread(new Runnable() {
+            @Override
+            public void run()
+            {
+                if (scenceUpdater != null)
+                {
+                    scenceUpdater.updateBottomNavigationMenu();
+                }
+            }
+        });
+    }
+
+    /**
+     *
+     *
+     */
+    @Override
     protected void onCreate(Bundle savedInstanceState)
     {
         super.onCreate(savedInstanceState);
index cfca155..09ef0cf 100644 (file)
@@ -277,7 +277,6 @@ public class CalendarFragment extends Fragment  implements View.OnClickListener,
     public void onResume()
     {
         super.onResume();
-
         fragmentIsActive = true;
     }
 
index 37bbcfb..8ff2e73 100644 (file)
@@ -11,7 +11,8 @@ import android.view.View;
 import android.view.ViewGroup;
 import android.widget.ArrayAdapter;
 import android.widget.ListView;
-import android.widget.Toast;
+
+import com.google.android.material.snackbar.Snackbar;
 
 import net.osdn.gokigen.pkremote.R;
 
@@ -118,7 +119,8 @@ public class LogCatFragment extends ListFragment
                                     view.setSelection(dataItems.size());
 
                                     // 更新終了通知
-                                    Toast.makeText(getActivity(), getString(R.string.finish_refresh), Toast.LENGTH_SHORT).show();
+                                    Snackbar.make(activity.findViewById(R.id.fragment1), getString(R.string.finish_refresh), Snackbar.LENGTH_SHORT).show();
+                                    //Toast.makeText(getActivity(), getString(R.string.finish_refresh), Toast.LENGTH_SHORT).show();
                                 }
                                 catch (Exception ee)
                                 {
index 293ef4e..65d3845 100644 (file)
@@ -74,6 +74,7 @@ public class ImageGridViewFragment extends Fragment implements AdapterView.OnIte
        private ImageGridViewAdapter adapter = null;
        private String filterLabel = null;
        private int currentSelectedIndex = 0;
+       private boolean fragmentIsActive = false;
 
 
        public static ImageGridViewFragment newInstance(@NonNull IInterfaceProvider interfaceProvider)
@@ -179,6 +180,7 @@ public class ImageGridViewFragment extends Fragment implements AdapterView.OnIte
        {
                super.onResume();
                Log.v(TAG, "onResume() Start");
+        fragmentIsActive = true;
                AppCompatActivity activity = (AppCompatActivity)getActivity();
                if (activity != null)
                {
@@ -276,6 +278,7 @@ public class ImageGridViewFragment extends Fragment implements AdapterView.OnIte
        public void onPause()
        {
         Log.v(TAG, "onPause() Start");
+        fragmentIsActive = false;
         try
         {
 /*
@@ -310,6 +313,12 @@ public class ImageGridViewFragment extends Fragment implements AdapterView.OnIte
         Log.v(TAG, "onPause() End");
     }
 
+    public boolean isFragmentActive()
+    {
+        return (fragmentIsActive);
+    }
+
+
        @Override
        public void onStop()
        {
index 5d66a68..43398f6 100644 (file)
@@ -38,7 +38,6 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
     private PreferenceFragmentCompat preferenceFragment = null;
     private LogCatFragment logCatFragment = null;
     private CalendarFragment calendarFragment = null;
-
     private ImageGridViewFragment gridViewFragment = null;
 
     public static CameraSceneUpdater newInstance(@NonNull AppCompatActivity activity)
@@ -239,7 +238,8 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
 
     //  IChangeScene
     @Override
-    public void changeSceneToCameraPropertyList() {
+    public void changeSceneToCameraPropertyList()
+    {
 /*
         try
         {
@@ -285,7 +285,8 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
 
     //  IChangeScene
     @Override
-    public void changeSceneToConfiguration() {
+    public void changeSceneToConfiguration()
+    {
         try {
             if (preferenceFragment == null) {
                 try {
@@ -317,7 +318,8 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
 
     //  IChangeScene
     @Override
-    public void changeCameraConnection() {
+    public void changeCameraConnection()
+    {
         if (interfaceProvider == null) {
             Log.v(TAG, "changeCameraConnection() : interfaceProvider is NULL");
             return;
@@ -342,8 +344,10 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
 
     //  IChangeScene
     @Override
-    public void reloadRemoteImageContents() {
-        try {
+    public void reloadRemoteImageContents()
+    {
+        try
+        {
             ICameraContentsRecognizer recognizer = interfaceProvider.getCameraContentsRecognizer();
             if (recognizer != null) {
                 // カメラ内のコンテンツ一覧を作成するように指示する
@@ -356,7 +360,8 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
 
     //  IChangeScene
     @Override
-    public void changeSceneToDebugInformation() {
+    public void changeSceneToDebugInformation()
+    {
         if (logCatFragment == null) {
             logCatFragment = LogCatFragment.newInstance();
         }
@@ -369,7 +374,8 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
 
     //  IChangeScene
     @Override
-    public void changeSceneToApiList() {
+    public void changeSceneToApiList()
+    {
 /*
         if (sonyApiListFragmentSony == null)
         {
@@ -385,8 +391,10 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
 
     //  IChangeScene
     @Override
-    public void changeSceneToCalendar() {
-        if (calendarFragment == null) {
+    public void changeSceneToCalendar()
+    {
+        if (calendarFragment == null)
+        {
             calendarFragment = CalendarFragment.newInstance(activity, this, interfaceProvider);
         }
         FragmentTransaction transaction = activity.getSupportFragmentManager().beginTransaction();
@@ -459,6 +467,32 @@ public class CameraSceneUpdater implements ICameraStatusReceiver, IChangeScene,
     }
 
     @Override
+    public void updateBottomNavigationMenu()
+    {
+        try
+        {
+            // ナビゲーション部分の選択状態をしたい...
+            int changeId = 0;
+            if (calendarFragment.isFragmentActive())
+            {
+                changeId = R.id.navigation_calendar;
+            }
+            else if (gridViewFragment.isFragmentActive())
+            {
+                changeId = R.id.navigation_photo_library;
+            }
+            if ((bottomNavigationView != null)&&(changeId != 0))
+            {
+                bottomNavigationView.setSelectedItemId(changeId);
+            }
+        }
+        catch (Exception e)
+        {
+            e.printStackTrace();
+        }
+    }
+
+    @Override
     public void setAnotherStatusReceiver(ICameraStatusReceiver statusReceiver)
     {
         this.anotherStatusReceiver = statusReceiver;
index 2e90845..04c5dd5 100644 (file)
@@ -18,4 +18,5 @@ public interface IChangeScene
     void exitApplication();
     void reloadRemoteImageContents();
     void setAnotherStatusReceiver(ICameraStatusReceiver statusReceiver);
+    void updateBottomNavigationMenu();
 }