AlertDialog OnKeyListener - How to get Focused Item?

by coderiver » Mon, 22 Dec 2008 10:12:26 GMT


Sponsored Links
 I have an AlertDialog with an OnKeyListener.  I need to find the
focused item when the Call key is pressed.
This AlertDialog also has an OnClickListener that works great - I get
the position of the item from my view when it is clicked.
What I also want to do - is get the position of the currently
highlighted (focused right?) item when the CALL key is pressed.
I can detected the CALL key event in my handler - no problem.  But I
do not know how to get the item that had the focus when the key was
pressed.

Here is my OnKey handler and some of the things I have used to try and
get info

    public boolean handleKeyPress(DialogInterface dialog, int keyCode,
KeyEvent event) {

        Log.d("keyPress", "handleKeyPress :
this.getSelectedItemPosition(): " + this.getSelectedItemPosition());
        Log.d("keyPress", "handleKeyPress : this.getSelectedItemId():
" + this.getSelectedItemId());

        AlertDialog ad = (AlertDialog)dialog;
        View fv = this.getCurrentFocus();
        if( fv != null ) {
             Log.d("keyPress", "handleKeyPress  : fv.getId(): " +
fv.getId());
        }

        ListView lv = this.getListView();
        if( lv != null ) {
            View fvC = lv.getFocusedChild();
            if( fvC != null ) {
                Log.d("keyPress", "handleKeyPress : fvC.getId(): " +
fvC.getId());
            }
            int selectedPos = lv.getSelectedItemPosition();
            Log.d("keyPress", "handleKeyPress : selectedPos: " +
selectedPos);
        }

        return false;
    }



Thanks for your help!

--~--~---------~--~----~------------~-------~--~----~



AlertDialog OnKeyListener - How to get Focused Item?

by coderiver » Tue, 23 Dec 2008 09:28:41 GMT


 I am thinking I need to override the dialog and track the position of
the focused item myself.
That seems kind of risky in case they ever get out of synch.  Am I
missing something obvious?

Thanks!



--~--~---------~--~----~------------~-------~--~----~


Sponsored Links


AlertDialog OnKeyListener - How to get Focused Item?

by coderiver » Sat, 27 Dec 2008 21:31:37 GMT


 I figured this out so I thought I would share.  The handleKeyPress
method that is called from my OnKey handler is part of my Activity
object.  So "this" is an activity not a dialog.  So to get the focused
item is pretty simple, I needed to keep a reference to the AlertDialog
(mAlertDialog in the example):

public boolean handleKeyPress(DialogInterface dialog, int keyCode,
KeyEvent event) {

 ListView lv = mAlertDialog.getListView();
 if( lv != null ) {
     int selectedPos = lv.getSelectedItemPosition();
     Log.d("keyPress", "handleKeyPress : selectedPos: " +
selectedPos);
 }

You also have to test for the right key and only choose the down
button action, but this is the part I had trouble with.
--~--~---------~--~----~------------~-------~--~----~



Other Threads

1. Passing Command line arguments

Hello,
I am new to Android Development.
I have a few questions to ask.

1) How can i pass command line arguments to an android application.

Lets say, i have to pass an Integer value as a command line argument
to an android application while launching it.


2) can we launch an application made using Eclipse IDE via command
line?
if yes,how?

if no, then do i have to rebuild the application using command line
tools?

-- 

2. Adding new api to android

Hi all,

I want to add one sample api in local copy of android on my machine. I
don't want it to be distributed on the open source.

For eg : I have mathlib.java file . This mathlib class has a native
method add.

Now i am not able to understand, where in the directory structure
should i keep this java file.

do i need to create .class and .h files manually for this or will
build system take care of it?

as per my understanding i'll need to have corresponding cpp
implementation for this api. so, where do i keep this cpp file?

Please suggest the steps to do this. Thanks in advance.

Anu

-- 
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: 

3. No Network Connectivity in Service/AlarmManager Process.

4. No Network Connectivity in Service/AlarmManager Process.

5. PCM format

6. Gallery android:unselectedAlpha works strangely

7. Problem seen in run Android (eclair) on an SMDK6410