Добавлено меню, открывающееся по свайпу или кнопке меню
This commit is contained in:
parent
9ec4e160e7
commit
8d927c06e8
@ -1,5 +1,9 @@
|
|||||||
<resources>
|
<resources>
|
||||||
|
|
||||||
<string name="app_name">RpyPlayer. Everlasting Summer</string>
|
<string name="app_name">RpyPlayer. Everlasting Summer</string>
|
||||||
|
<string name="actions">Действия</string>
|
||||||
|
|
||||||
|
<string-array name="menu_items">
|
||||||
|
</string-array>
|
||||||
|
|
||||||
</resources>
|
</resources>
|
||||||
|
44
src/com/annimon/everlastingsummer/Dialogs.java
Normal file
44
src/com/annimon/everlastingsummer/Dialogs.java
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
package com.annimon.everlastingsummer;
|
||||||
|
|
||||||
|
import android.app.AlertDialog;
|
||||||
|
import android.content.Context;
|
||||||
|
import android.content.DialogInterface;
|
||||||
|
import android.view.ContextThemeWrapper;
|
||||||
|
import android.view.LayoutInflater;
|
||||||
|
import android.view.View;
|
||||||
|
import android.widget.SeekBar;
|
||||||
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Работа с диалогами.
|
||||||
|
* @author aNNiMON
|
||||||
|
*/
|
||||||
|
public final class Dialogs {
|
||||||
|
|
||||||
|
public static Dialogs with(Context context) {
|
||||||
|
return new Dialogs(context);
|
||||||
|
}
|
||||||
|
|
||||||
|
private final Context context;
|
||||||
|
private final AlertDialog.Builder builder;
|
||||||
|
|
||||||
|
private Dialogs(Context context) {
|
||||||
|
this.context = context;
|
||||||
|
builder = new AlertDialog.Builder(new ContextThemeWrapper(context, R.style.Dialog));
|
||||||
|
builder.setNegativeButton(android.R.string.cancel, dismissDialog);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void showMenu(int itemsId, DialogInterface.OnClickListener listener) {
|
||||||
|
builder.setTitle(R.string.actions);
|
||||||
|
builder.setItems(itemsId, listener);
|
||||||
|
builder.setCancelable(true);
|
||||||
|
builder.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
private final DialogInterface.OnClickListener dismissDialog = new DialogInterface.OnClickListener() {
|
||||||
|
@Override
|
||||||
|
public void onClick(DialogInterface dialog, int which) {
|
||||||
|
dialog.dismiss();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
@ -6,6 +6,7 @@ import java.util.Map;
|
|||||||
import com.annimon.everlastingsummer.TouchGesture.TouchGestureType;
|
import com.annimon.everlastingsummer.TouchGesture.TouchGestureType;
|
||||||
import android.annotation.SuppressLint;
|
import android.annotation.SuppressLint;
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
|
import android.content.DialogInterface;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
import android.media.MediaPlayer;
|
import android.media.MediaPlayer;
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
@ -14,6 +15,7 @@ import android.text.*;
|
|||||||
import android.text.style.ForegroundColorSpan;
|
import android.text.style.ForegroundColorSpan;
|
||||||
import android.util.DisplayMetrics;
|
import android.util.DisplayMetrics;
|
||||||
import android.view.Gravity;
|
import android.view.Gravity;
|
||||||
|
import android.view.KeyEvent;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.WindowManager;
|
import android.view.WindowManager;
|
||||||
import android.widget.FrameLayout;
|
import android.widget.FrameLayout;
|
||||||
@ -135,6 +137,23 @@ public final class ViewActivity extends Activity implements TouchGesture.OnTouch
|
|||||||
Parser.getInstance().next();
|
Parser.getInstance().next();
|
||||||
break;
|
break;
|
||||||
case SWIPE:
|
case SWIPE:
|
||||||
|
Dialogs.with(this).showMenu(R.array.menu_items, menu);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean onKeyUp(int keyCode, KeyEvent event) {
|
||||||
|
if (keyCode == KeyEvent.KEYCODE_MENU) {
|
||||||
|
Dialogs.with(this).showMenu(R.array.menu_items, menu);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return super.onKeyUp(keyCode, event);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void onMenuItemSelected(int item) {
|
||||||
|
switch (item) {
|
||||||
|
case 0:
|
||||||
|
Dialogs.with(getInstance()).showNavigate();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -330,6 +349,14 @@ public final class ViewActivity extends Activity implements TouchGesture.OnTouch
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
private final DialogInterface.OnClickListener menu = new DialogInterface.OnClickListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onClick(DialogInterface dialog, int item) {
|
||||||
|
onMenuItemSelected(item);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
private class Person {
|
private class Person {
|
||||||
String name;
|
String name;
|
||||||
int color;
|
int color;
|
||||||
|
Loading…
Reference in New Issue
Block a user