Merge two activities into one

DatabaseActivity and TableActivity is now ListActivity!
This commit is contained in:
Przemek Grondek 2014-08-06 15:20:59 +02:00
parent 78d840db29
commit 6ca1cacda5
9 changed files with 28 additions and 79 deletions

View file

@ -18,12 +18,8 @@
</intent-filter>
</activity>
<activity
android:name=".DatabaseActivity"
android:label="@string/title_activity_database" >
</activity>
<activity
android:name=".TableActivity"
android:label="@string/title_activity_table" >
android:name=".ListActivity"
android:label="@string/title_activity_list" >
</activity>
<activity
android:name=".EntriesActivity"

View file

@ -48,7 +48,8 @@ public class DatabaseFragment extends Fragment implements AdapterView.OnItemClic
if(Static.isNetworkConnected(getActivity())) {
String chosenDatabase = (String) listAdapter.getItem(position);
listAdapter.getItem(position);
Intent intent = new Intent(getActivity(), TableActivity.class);
Intent intent = new Intent(getActivity(), ListActivity.class);
intent.putExtra(Static.FRAGMENT_TO_START, Static.FRAGMENT_TABLE);
intent.putExtra(Static.DATABASE_NAME_ARG, chosenDatabase);
Static.asyncDatabaseConnector.setDatabaseInUse(chosenDatabase);
startActivity(intent);

View file

@ -1,19 +1,31 @@
package info.nerull7.mysqlbrowser;
import android.app.Activity;
import android.app.Fragment;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
public class DatabaseActivity extends Activity {
public class ListActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_database);
setContentView(R.layout.activity_list);
Bundle extras = getIntent().getExtras();
String fragmentName = extras.getString(Static.FRAGMENT_TO_START);
Fragment fragment = null;
if(fragmentName.compareTo(Static.FRAGMENT_DATABASE)==0){
fragment = new DatabaseFragment();
setTitle(R.string.title_fragment_database);
} else if (fragmentName.compareTo(Static.FRAGMENT_TABLE)==0) {
fragment = new TableFragment();
setTitle(extras.getString(Static.DATABASE_NAME_ARG));
}
fragment.setArguments(getIntent().getExtras());
if (savedInstanceState == null) {
getFragmentManager().beginTransaction()
.add(R.id.container, new DatabaseFragment())
.add(R.id.container, fragment)
.commit();
}
}

View file

@ -1,15 +1,10 @@
package info.nerull7.mysqlbrowser;
import android.app.AlertDialog;
import android.app.Fragment;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceManager;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -17,13 +12,6 @@ import android.widget.Button;
import android.widget.EditText;
import android.widget.ProgressBar;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import javax.crypto.BadPaddingException;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
import info.nerull7.mysqlbrowser.db.AsyncDatabaseConnector;
/**
@ -101,7 +89,8 @@ public class LoginFragment extends Fragment implements View.OnClickListener, Asy
public void onBooleanReturn(boolean result) {
if(result) {
Static.asyncDatabaseConnector = asyncDatabaseConnector;
Intent intent = new Intent(getActivity(), DatabaseActivity.class);
Intent intent = new Intent(getActivity(), ListActivity.class);
intent.putExtra(Static.FRAGMENT_TO_START, Static.FRAGMENT_DATABASE);
startActivity(intent);
}
else {

View file

@ -18,6 +18,10 @@ public class Static {
public static final String DATABASE_NAME_ARG = "DatabaseName";
public static final String TABLE_NAME_ARG = "TableName";
public static final String FRAGMENT_TO_START = "FragmentStarter";
public static final String FRAGMENT_DATABASE = "DatabaseFragment";
public static final String FRAGMENT_TABLE = "TableFragment";
public static AsyncDatabaseConnector asyncDatabaseConnector = null;
public static void startSettings(Context context){

View file

@ -1,46 +0,0 @@
package info.nerull7.mysqlbrowser;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
public class TableActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_table);
setTitle(getIntent().getStringExtra(Static.DATABASE_NAME_ARG));
TableFragment tableFragment = new TableFragment();
tableFragment.setArguments(getIntent().getExtras());
if (savedInstanceState == null) {
getFragmentManager().beginTransaction()
.add(R.id.container, tableFragment)
.commit();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
Static.startSettings(this);
return true;
}
return super.onOptionsItemSelected(item);
}
}

View file

@ -1,7 +0,0 @@
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="info.nerull7.mysqlbrowser.DatabaseActivity"
tools:ignore="MergeRootFrame" />

View file

@ -3,5 +3,5 @@
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="info.nerull7.mysqlbrowser.TableActivity"
tools:context="info.nerull7.mysqlbrowser.ListActivity"
tools:ignore="MergeRootFrame" />

View file

@ -8,12 +8,10 @@
<string name="username">Username</string>
<string name="hint_url">URL ex: https://example.com/c.php</string>
<string name="title_activity_main">MainActivity</string>
<string name="title_activity_database">DatabaseActivity</string>
<string name="hello_world">Hello world!</string>
<string name="login_error">Wrong login/password</string>
<string name="ok">OK</string>
<string name="error">Error</string>
<string name="title_activity_table">TableActivity</string>
<string name="title_activity_entries">EntriesActivity</string>
<string name="general_category">General</string>
<string name="entries_limit">Entries per page limit</string>
@ -34,5 +32,7 @@
<string name="action_add">Add new</string>
<string name="title_activity_element">ElementActivity</string>
<string name="action_save">Save</string>
<string name="title_fragment_database">Available Databases</string>
<string name="title_activity_list">ListActivity</string>
</resources>