Add settings activity

Add menu
This commit is contained in:
2015-11-24 17:35:58 -05:00
committed by geoffroy
parent 2094a4d36c
commit 296825566b
29 changed files with 211 additions and 22 deletions

7
DoNExt/.idea/dictionaries/geoffroy.xml generated Normal file
View File

@@ -0,0 +1,7 @@
<component name="ProjectDictionaryState">
<dictionary name="geoffroy">
<words>
<w>wismna</w>
</words>
</dictionary>
</component>

27
DoNExt/.idea/misc.xml generated
View File

@@ -1,5 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="EntryPointsManager">
<entry_points version="2.0" />
</component>
<component name="NullableNotNullManager">
<option name="myDefaultNullable" value="android.support.annotation.Nullable" />
<option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
<option name="myNullables">
<value>
<list size="4">
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" />
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" />
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.Nullable" />
<item index="3" class="java.lang.String" itemvalue="android.support.annotation.Nullable" />
</list>
</value>
</option>
<option name="myNotNulls">
<value>
<list size="4">
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" />
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" />
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" />
<item index="3" class="java.lang.String" itemvalue="android.support.annotation.NonNull" />
</list>
</value>
</option>
</component>
<component name="ProjectLevelVcsManager" settingsEditedManually="false">
<OptionsSetting value="true" id="Add" />
<OptionsSetting value="true" id="Remove" />

2
DoNExt/.idea/vcs.xml generated
View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="" />
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>

View File

@@ -24,4 +24,5 @@ dependencies {
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
compile 'com.android.support:support-v4:23.1.1'
}

View File

@@ -18,6 +18,14 @@
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".SettingsActivity"
android:label="@string/title_activity_settings"
android:parentActivityName=".MainActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity" />
</activity>
</application>
</manifest>

View File

@@ -1,24 +1,24 @@
package com.wismna.geoffroy.donext;
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
/*import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;*/
public class MainActivity extends AppCompatActivity {
/**
@@ -54,17 +54,21 @@ public class MainActivity extends AppCompatActivity {
TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
tabLayout.setupWithViewPager(mViewPager);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
/*FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
});
});*/
}
/** Called when the user clicks the Settings button */
public void openSettings(MenuItem menuItem) {
Intent intent = new Intent(this, SettingsActivity.class);
startActivity(intent);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
@@ -143,12 +147,12 @@ public class MainActivity extends AppCompatActivity {
@Override
public int getCount() {
// Show 3 total pages.
return 3;
return 7;
}
@Override
public CharSequence getPageTitle(int position) {
switch (position) {
/*switch (position) {
case 0:
return "SECTION 1";
case 1:
@@ -156,7 +160,8 @@ public class MainActivity extends AppCompatActivity {
case 2:
return "SECTION 3";
}
return null;
return null;*/
return "List " + position;
}
}
}

View File

@@ -0,0 +1,50 @@
package com.wismna.geoffroy.donext;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Spinner;
public class SettingsActivity extends AppCompatActivity implements AdapterView.OnItemSelectedListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_settings);
populateSpinner();
}
private void populateSpinner() {
Spinner spinner = (Spinner) findViewById(R.id.max_lists_spinner);
spinner.setSelection(getPreference(R.id.max_lists_spinner));
//ArrayAdapter<String> adapter = (ArrayAdapter<String>) spinner.getAdapter();
//int position = adapter.getPosition()
/*ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this,
R.array.settings_max_lists_number, R.layout.support_simple_spinner_dropdown_item);
adapter.setDropDownViewResource(R.layout.support_simple_spinner_dropdown_item);
spinner.setAdapter(adapter);*/
}
protected int getPreference(int setting) {
SharedPreferences sharedPreferences = this.getPreferences(Context.MODE_PRIVATE);
return sharedPreferences.getInt(getString(setting), 2);
}
protected void setPreference(int setting, int value) {
SharedPreferences sharedPreferences = this.getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putInt(getString(setting), value);
editor.apply();
}
public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) {
// Item was selected, do something
//setPreference(R.id.max_lists_spinner, Integer.parseInt((String) parent.getItemAtPosition(pos)));
setPreference(R.id.max_lists_spinner, pos);
}
public void onNothingSelected(AdapterView<?> parent) {
// Another interface callback
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 233 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 368 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 B

View File

@@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zm1,15h-2v-6h2v6zm0,-8h-2V7h2v2z" />
</vector>

View File

@@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M11.5,22c1.1,0 2,-0.9 2,-2h-4c0,1.1 0.9,2 2,2zm6.5,-6v-5.5c0,-3.07 -2.13,-5.64 -5,-6.32V3.5c0,-0.83 -0.67,-1.5 -1.5,-1.5S10,2.67 10,3.5v0.68c-2.87,0.68 -5,3.25 -5,6.32V16l-2,2v1h17v-1l-2,-2z" />
</vector>

View File

@@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24.0dp"
android:height="24.0dp"
android:viewportHeight="24.0"
android:viewportWidth="24.0">
<path
android:fillColor="#FF000000"
android:pathData="M12 4V1L8 5l4 4V6c3.31 0 6 2.69 6 6 0 1.01,-.25 1.97,-.7 2.8l1.46 1.46C19.54 15.03 20 13.57 20 12c0,-4.42,-3.58,-8,-8,-8zm0 14c-3.31 0,-6,-2.69,-6,-6 0,-1.01.25,-1.97.7,-2.8L5.24 7.74C4.46 8.97 4 10.43 4 12c0 4.42 3.58 8 8 8v3l4,-4,-4,-4v3z" />
</vector>

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 278 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 467 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 579 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 383 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 669 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 497 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 875 B

View File

@@ -38,12 +38,4 @@
android:layout_height="match_parent"
app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="end|bottom"
android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_dialog_email" />
</android.support.design.widget.CoordinatorLayout>

View File

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout 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:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:orientation="vertical"
tools:context="com.wismna.geoffroy.donext.SettingsActivity">
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:saveEnabled="true"
android:checked="true"
android:clickable="true"
android:text="@string/settings_confirm_donext" />
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:checked="true"
android:clickable="true"
android:saveEnabled="true"
android:text="@string/settings_confirm_markdone" />
<CheckBox
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:checked="true"
android:clickable="true"
android:saveEnabled="true"
android:text="@string/settings_confirm_delete" />
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/settings_max_lists_label"/>
<Spinner
android:id="@+id/max_lists_spinner"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:entries="@array/settings_max_lists_number"/>
</LinearLayout>

View File

@@ -6,5 +6,16 @@
android:id="@+id/action_settings"
android:orderInCategory="100"
android:title="@string/action_settings"
android:onClick="openSettings"
app:showAsAction="never" />
<item
android:id="@+id/action_newTab"
android:orderInCategory="50"
android:title="@string/action_newTab"
app:showAsAction="never" />
<item
android:id="@+id/action_editTabs"
android:orderInCategory="60"
android:title="@string/action_editTabs"
app:showAsAction="never" />
</menu>

View File

@@ -1,5 +1,23 @@
<resources>
<string name="app_name">DoNExt</string>
<string name="action_settings">Settings</string>
<string name="action_newTab">New list</string>
<string name="action_editTabs">Edit lists</string>
<string name="section_format">Hello World from section: %1$d</string>
<string name="title_activity_settings">Settings</string>
<!-- Strings related to Settings -->
<string name="settings_confirm_donext">Confirm on DoNext?</string>
<string name="settings_confirm_markdone">Confirm on mark Done?</string>
<string name="settings_confirm_delete">Confirm on delete?</string>
<string name="settings_max_lists_label">Maximum number of lists:</string>
<string-array name="settings_max_lists_number">
<item>1</item>
<item>2</item>
<item>3</item>
<item>4</item>
<item>5</item>
<item>6</item>
<item>7</item>
</string-array>
</resources>