Получить позицию курсора строки путем сопоставления, чтобы установить положение счетчика - PullRequest
1 голос
/ 19 декабря 2011

Я получаю пользовательский идентификатор рингтона от абонента, и в основном я хочу сделать setSelection (); на мой счетчик с этой мелодией, но я не могу понять, как сопоставить позиции ..

Я пытался сопоставить строку «Имя рингтона», чтобы найти его положение в Spinner из его курсора. Я иду об этом правильным путем? Или есть более простой способ сопоставить мелодию звонка, например: content: // media / internal / audio / media / 72, с позицией в счетчике?

 public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main2);

        mRingtoneManager2 = new RingtoneManager(this); //adds ringtonemanager
        mRingtoneManager2.setType(RingtoneManager.TYPE_RINGTONE); //sets the type to ringtones
        mRingtoneManager2.setIncludeDrm(true); //get list of ringtones to include DRM

        mCursor2 = mRingtoneManager2.getCursor(); //appends my cursor to the ringtonemanager

        startManagingCursor(mCursor2); //starts the cursor query

        String[] from = {mCursor2.getColumnName(RingtoneManager.TITLE_COLUMN_INDEX)}; // get the list items for the listadapter could be TITLE or URI

        int[] to = {android.R.id.text1}; //sets the items from above string to listview
        // create simple cursor adapter
        SimpleCursorAdapter adapter =
          new SimpleCursorAdapter(this, android.R.layout.simple_spinner_item, mCursor2, from, to );
        adapter.setDropDownViewResource( android.R.layout.simple_spinner_item);
        // get reference to our spinner
        s = (Spinner) findViewById( R.id.spinner1);
        s.setAdapter(adapter);
                getValue(mCursor2);
        s.setSelection(posid);
        s.setOnItemSelectedListener(this);

            }

    public String getValue(Cursor cursor) {
            String posid = "Loopy Lounge";
            while (cursor.moveToNext()) {
                posid = cursor.getString(0);
            }
            return;
        }
...