【Android源码 栏目提醒】:网学会员在Android源码 频道为大家收集整理了“android音乐剪辑—源代码 - 企业软件开发“提供大家参考,希望对大家有所帮助!
先锋音乐快剪软件V1.0 1 package com.ringdroid import android.app.Dialog import android.content.Context import android.content.res.Resources import android.os.Message import android.view.View import android.widget.ArrayAdapter import android.widget.Button import android.widget.EditText import android.widget.Spinner import java.util.ArrayList import java.util.HashMap public class AfterSaveActionDialog extends Dialog private Message mResponse public AfterSaveActionDialogContext context Message response supercontext setContentViewR.layout.after_save_action setTitleR.string.alert_title_success ButtonfindViewByIdR.id.button_make_default .setOnClickListenernew View.OnClickListener public void onClickView view closeAndSendResultR.id.button_make_default ButtonfindViewByIdR.id.button_choose_contact .setOnClickListenernew View.OnClickListener public void onClickView view closeAndSendResultR.id.button_choose_contact ButtonfindViewByIdR.id.button_do_nothing .setOnClickListenernew View.OnClickListener public void onClickView view closeAndSendResultR.id.button_do_nothing mResponse response private void closeAndSendResultint clickedButtonId mResponse.arg1 clickedButtonId mResponse.sendToTarget dismiss 先锋音乐快剪软件V1.0 2 package com.ringdroid import android.app.AlertDialog import android.app.ListActivity import android.content.ContentValues import android.content.ContentResolver import android.content.DialogInterface import android.content.Intent import android.database.Cursor import android.database.MergeCursor import android.net.Uri import android.os.Build import android.os.Bundle import android.os.Environment import android.provider.Contacts import android.provider.Contacts.People import android.text.Editable import android.text.TextWatcher import android.util.Log import android.view.ContextMenu import android.view.ContextMenu.ContextMenuInfo import android.view.Menu import android.view.MenuItem import android.view.View import android.widget.AdapterView.AdapterContextMenuInfo import android.widget.AdapterView.OnItemClickListener import android.widget.AdapterView import android.widget.Button import android.widget.ListAdapter import android.widget.SimpleCursorAdapter import android.widget.TextView import android.widget.Toast import java.io.File import java.lang.reflect.Method import java.util.ArrayList import java.util.Arrays public class ChooseContactActivity extends ListActivity implements TextWatcher private TextView mFilter private SimpleCursorAdapter mAdapter private Uri mRingtoneUri public ChooseContactActivity 先锋音乐快剪软件V1.0 3 Override public void onCreateBundle icicle super.onCreateicicle setTitleR.string.choose_contact_title Intent intent getIntent mRingtoneUri intent.getData setContentViewR.layout.choose_contact try mAdapter new SimpleCursorAdapter this R.layout.contact_row createCursorquotquot new String People.CUSTOM_RINGTONE People.STARRED People.DISPLAY_NAME new int R.id.row_ringtone R.id.row_starred R.id.row_display_name mAdapter.setViewBindernew SimpleCursorAdapter.ViewBinder public boolean setViewValueView view Cursor cursor int columnIndex String name cursor.getColumnNamecolumnIndex String value cursor.getStringcolumnIndex if name.equalsPeople.CUSTOM_RINGTONE if value null ampamp value.length gt 0 view.setVisibilityView.VISIBLE else view.setVisibilityView.INVISIBLE return true if name.equalsPeople.STARRED if value null ampamp value.equalsquot1quot view.setVisibilityView.VISIBLE else view.setVisibilityView.INVISIBLE return true return false 先锋音乐快剪软件V1.0 4 setListAdaptermAdapter getListView.setOnItemClickListenernew OnItemClickListener public void onItemClickAdapterView parent View view int position long id assignRingtoneToContact catch SecurityException e Log.equotRingdroidquot e.toString mFilter TextView findViewByIdR.id.search_filter if mFilter null mFilter.addTextChangedListenerthis private boolean isEclairOrLater return Build.VERSION.SDK_INT gt 5 private Uri getContactContentUri if isEclairOrLater return Uri.parsequotcontent://com.android.contacts/contactsquot else return Contacts.People.CONTENT_URI private void assignRingtoneToContact Cursor c mAdapter.getCursor int dataIndex c.getColumnIndexOrThrowPeople._ID String contactId c.getStringdataIndex dataIndex c.getColumnIndexOrThrowPeople.DISPLAY_NAME String displayName c.getStringdataIndex Uri uri Uri.withAppendedPathgetContactContentUri contactId ContentValues values new ContentValues values.putPeople.CUSTOM_RINGTONE mRingtoneUri.toString getContentResolver.updateuri values null null String message getResources.getTextR.string.success_contact_ringtone quot quot displayName Toast.makeTextthis message Toast.LENGTH_SHORT .show 先锋音乐快剪软件V1.0 5 finish return private Cursor createCursorString filter String selection if filter null ampamp filter.length gt 0 selection quotDISPLAY_NAME LIKE quotquot filter quotquotquot else selection null Cursor cursor managedQuery getContactContentUri new String People._ID People.CUSTOM_RINGTONE People.DISPLAY_NAME People.LAST_TIME_CONTACTED People.STARRED People.TIMES_CONTACTED selection null quotSTARRED DESC quot quotTIMES_CONTACTED DESC quot quotLAST_TIME_CONTACTED DESC quot quotDISPLAY_NAME ASCquot Log.iquotRingdroidquot cursor.getCount quot contactsquot return cursor public void beforeTextChangedCharSequence s int start int count int after public void onTextChangedCharSequence s int start int before int count public void afterTextChangedEditable s String filterStr mFilter.getText.toString mAdapter.changeCursorcreateCursorfilterStr package com.ringdroid import android.app.Dialog import android.content.Context import android.content.res.Resources import android.os.Message 先锋音乐快剪软件V1.0 6 import android.util.Log import android.view.View import android.widget.AdapterView import android.widget.AdapterView.OnItemSelectedListener import android.widget.ArrayAdapter import android.widget.Button import android.widget.EditText import android.widget.Spinner import java.util.ArrayList import java.util.HashMap public class FileSaveDialog extends Dialog public static final int FILE_KIND_MUSIC 0 public static final int FILE_KIND_ALARM 1 public static final int FILE_KIND_NOTIFICATION 2 public static final int FILE_KIND_RINGTONE 3 private Spinner mTypeSpinner private EditText mFilename private Message mResponse private String mOriginalName private ArrayListltStringgt mTypeArray private int mPreviousSelection public static String KindToNameint kind switchkind default: return quotUnknownquot case FILE_KIND_MUSIC: return quotMusicquot case FILE_KIND_ALARM: return quotAlarmquot case FILE_KIND_NOTIFICATION: return quotNotificationquot case FILE_KIND_RINGTONE: return quotRingtonequot public FileSaveDialogContext context Resources resources String originalName Message response supercontext setContentViewR.layout.file_save setTitleresources.getStringR.string.file_save_title mTypeArray new ArrayListltStringgt mTypeArray.addresources.getStringR.string.type_music 先锋音乐快剪软件V1.0 7 mTypeArray.addresources.getStringR.string.type_alarm mTypeArray.addresources.getStringR.string.type_notification mTypeArray.addresources.getStringR.string.type_ringtone mFilename EditTextfindViewByIdR.id.filename mOriginalName originalName ArrayAdapterltStringgt adapter new ArrayAdapterltStringgt context android.R.layout.simple_spinner_item mTypeArray adapter.setDropDownViewResource android.R.layout.simple_spinner_dropdown_item mTypeSpinner Spinner findViewByIdR.id.ringtone_type mTypeSpinner.setAdapteradapter mTypeSpinner.setSelectionFILE_KIND_RINGTONE mPreviousSelection FILE_KIND_RINGTONE setFilenameEditBoxFromNamefalse mTypeSpinner.setOnItemSelectedListenernew OnItemSelectedListener public void onItemSelectedAdapterView parent View v int position long id setFilenameEditBoxFromNametrue public void onNothingSelectedAdapterView parent Button save ButtonfindViewByIdR.id.save save.setOnClickListenersaveListener Button cancel ButtonfindViewByIdR.id.cancel cancel.setOnClickListenercancelListener mResponse response private void setFilenameEditBoxFromNameboolean onlyIfNotEdited if onlyIfNotEdited CharSequence currentText mFilename.getText String expectedText mOriginalName quot quot mTypeArray.getmPreviousSelection if expectedText.contentEqualscurrentText return int newSelection mTypeSpinner.getSelectedItemPosition String newSuffix mTypeArray.getnewSelection mFilename.setTextmOriginalName quot quot newSuffix mPreviousSelection mTypeSpinner.getSelectedItemPosition 先锋音乐快剪软件V1.0 8 private View.OnClickListener saveListener new View.OnClickListener public void onClickView view mResponse.obj mFilename.getText mResponse.arg1 mTypeSpinner.getSelectedItemPosition mResponse.sendToTarget dismiss private View.OnClickListener cancelListener new View.OnClickListener public void onClickView view dismiss package com.ringdroid import android.content.Context import android.graphics.Canvas import android.graphics.Paint import android.graphics.Path import android.graphics.Rect import android.util.AttributeSet import android.view.KeyEvent import android.view.MotionEvent import android.view.View import android.widget.ImageView public class MarkerView extends ImageView public interface MarkerListener public void markerTouchStartMarkerView marker float pos public void markerTouchMoveMarkerView marker float pos public void markerTouchEndMarkerView marker public void markerFocusMarkerView marker public void markerLeftMarkerView marker int velocity public void markerRightMarkerView marker int velocity public void markerEnterMarkerView marker public void markerKeyUp public void markerDraw private int mVelocity private MarkerListener mListener private float mTouchStart private int mTouchLast public MarkerViewContext context AttributeSet attrs supercontext attrs setFocusabletrue 先锋音乐快剪软件V1.0 9 mVelocity 0 mListener null public void setListenerMarkerListener listener mListener listener Override public boolean onTouchEventMotionEvent event switchevent.getAction case MotionEvent.ACTION_DOWN: requestFocus mListener.markerTouchStartthis event.getRawX break case MotionEvent.ACTION_MOVE: mListener.markerTouchMovethis event.getRawX break case MotionEvent.ACTION_UP: mListener.markerTouchEndthis break return true Override protected void onFocusChangedboolean gainFocus int direction Rect previouslyFocusedRect if gainFocus ampamp mListener null mListener.markerFocusthis super.onFocusChangedgainFocus direction previouslyFocusedRect Override protected void onDrawCanvas canvas super.onDrawcanvas if mListener null mListener.markerDraw Override public boolean onKeyDownint keyCode KeyEvent event mVelocity int v intMath.sqrt1 mVelocity / 2 if mListener null if keyCode KeyEvent.KEYCODE_DPAD_LEFT mListener.markerLeftthis v return true else if keyCode KeyEvent.KEYCODE_DPAD_RIGHT 先锋音乐快剪软件V1.0 10 mListener.markerRightthis v return true else if keyCode KeyEvent.KEYCODE_DPAD_CENTER mListener.markerEnterthis return true return super.onKeyDow.