Welcome TableActivity

New TableActivity + TableFragment
Also passing database name from DatabaseActivity to TableActivity
This commit is contained in:
Przemek Grondek 2014-07-14 14:15:30 +02:00
parent 3ba615b212
commit 73e31bb707
8 changed files with 130 additions and 5 deletions

View file

@ -20,6 +20,10 @@
android:name=".DatabaseActivity"
android:label="@string/title_activity_database" >
</activity>
<activity
android:name=".TableActivity"
android:label="@string/title_activity_table" >
</activity>
</application>
</manifest>

View file

@ -2,11 +2,14 @@ package info.nerull7.mysqlbrowser;
import android.app.Activity;
import android.app.Fragment;
import android.content.Intent;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListAdapter;
import android.widget.ListView;
@ -15,22 +18,31 @@ import info.nerull7.mysqlbrowser.db.DatabaseConnector;
/**
* Created by nerull7 on 14.07.14.
*/
public class DatabaseFragment extends Fragment {
public class DatabaseFragment extends Fragment implements AdapterView.OnItemClickListener {
ListView databasesListView;
ListAdapter listAdapter;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){
//Inflate the layout for this fragment
View V = inflater.inflate(R.layout.fragment_database, container, false);
databasesListView = (ListView)V.findViewById(R.id.databaseList);
databasesListView = (ListView) V.findViewById(R.id.databaseList);
setupListViewDatabase();
return V;
}
private void setupListViewDatabase(){
// TODO not local constuction!!!
DatabaseConnector databaseConnector = new DatabaseConnector("FIXME","FIXME","FIXME");
ListAdapter listAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, databaseConnector.getDatabases());
listAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, Static.databaseConnector.getDatabases());
databasesListView.setAdapter(listAdapter);
databasesListView.setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int position, long id) {
listAdapter.getItem(position);
Intent intent = new Intent(getActivity(), TableActivity.class);
intent.putExtra("DatabaseName", (String) listAdapter.getItem(position));
startActivity(intent);
}
}

View file

@ -0,0 +1,53 @@
package info.nerull7.mysqlbrowser;
import android.app.Activity;
import android.app.ActionBar;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.os.Build;
import info.nerull7.mysqlbrowser.R;
public class TableActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_table);
TableFragment tableFragment = new TableFragment();
tableFragment.setArguments(getIntent().getExtras());
// Bundle bundle = new Bundle();
if (savedInstanceState == null) {
getFragmentManager().beginTransaction()
.add(R.id.container, tableFragment)
.commit();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.table, 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) {
return true;
}
return super.onOptionsItemSelected(item);
}
}

View file

@ -0,0 +1,23 @@
package info.nerull7.mysqlbrowser;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
/**
* Created by nerull7 on 14.07.14.
*/
public class TableFragment extends Fragment{
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_table, container, false);
TextView text = (TextView) rootView.findViewById(R.id.dumbText);
text.setText(getArguments().getString("DatabaseName"));
return rootView;
}
}

View file

@ -0,0 +1,7 @@
<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.TableActivity"
tools:ignore="MergeRootFrame" />

View file

@ -0,0 +1,17 @@
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="info.nerull7.mysqlbrowser.TableFragment">
<TextView
android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/dumbText"/>
</RelativeLayout>

View file

@ -0,0 +1,8 @@
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context="info.nerull7.mysqlbrowser.TableActivity" >
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never" />
</menu>

View file

@ -13,5 +13,6 @@
<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>
</resources>