Then Check the xml.... Remove unnecessary attributes........

On Wed, Jun 3, 2009 at 6:37 PM, guna <gunaz...@gmail.com> wrote:

>  getListView().setItemsCanFocus(true);
>
> Change to true as like this... it will work then
>
> On Wed, Jun 3, 2009 at 6:23 PM, Tom <thomas.coz...@gmail.com> wrote:
>
>>
>> public class UserList extends ListActivity implements
>> AdapterView.OnItemClickListener{
>>
>>        private Client client;
>>        private ArrayList<User> users = new ArrayList<User>();
>>        private UserAdapter userAdapter;
>>
>>     @Override
>>    public void onCreate(Bundle savedInstanceState) {
>>        super.onCreate(savedInstanceState);
>>        setContentView(R.layout.user_list);
>>         getListView().setItemsCanFocus(false);
>>        getListView().setOnItemClickListener(this);
>>
>>        Intent i = getIntent();
>>        if (i!= null)
>>        {
>>                if (i.getAction().equalsIgnoreCase(Intent.ACTION_VIEW))
>>                {
>>                this.client = (Client) i.getSerializableExtra
>> (Constants.CLIENT_CLASS_NAME);
>>
>>                this.userAdapter = new UserAdapter(this,
>> R.layout.user_row, users);
>>
>>                users = (ArrayList<User>) this.client.getUsers();
>>
>>                 Log.i(getClass().getSimpleName(),"Display users");
>>                 for(int j=0;j<users.size();j++)
>>                {
>>                        this.userAdapter.add(users.get(j));
>>                }
>>                setListAdapter(this.userAdapter);
>>
>>                }
>>        }
>>    }
>>
>>
>>     @Override
>>    public void onItemClick(AdapterView<?> adapterView, View view, int
>> position, long id)
>>    {
>>        Log.d(getClass().getSimpleName(), " -- Click -- ");
>>    }
>>
>>    // Adapter
>>     private class UserAdapter extends ArrayAdapter<User> {
>>
>>        private LayoutInflater mInflater;
>>        private ArrayList<User> items;
>>
>>        public UserAdapter(Context context, int resourceId,
>> ArrayList<User> items)
>>        {
>>            super(context, resourceId, items);
>>            mInflater = LayoutInflater.from(context);
>>            this.items = items;
>>        }
>>
>>        public boolean areAllItemsSelectable()
>>        {
>>            return true;
>>        }
>>
>>        public boolean isEnabled(int position) {
>>            if (position >= 0 && position <= items.size()) {
>>                return true;
>>            }
>>            return false;
>>        }
>>
>>        public int getCount() {
>>            return items.size();
>>        }
>>
>>        public User getItem(int position) {
>>              if (0 == position) {
>>                  return null;
>>              }
>>              return items.get(position);
>>         }
>>
>>        @Override
>>        public View getView(int position, View convertView, ViewGroup
>> parent) {
>>
>>            ViewHolder holder = null;
>>            View v = convertView;
>>            User user = items.get(position);
>>
>>            if (v == null) {
>>                mInflater = (LayoutInflater)getSystemService
>> (Context.LAYOUT_INFLATER_SERVICE);
>>                v = mInflater.inflate(R.layout.user_row, null);
>>
>>                    if (user != null) {
>>                        // Creates a ViewHolder and store references to the
>> two children views
>>                        // we want to bind data to.
>>                        holder = new ViewHolder();
>>                        holder.firstNameText = (TextView) v.findViewById
>> (R.id.user_first_name);
>>                        holder.lastNameText = (TextView) v.findViewById
>> (R.id.user_last_name);
>>                        holder.phoneNumberText = (TextView) v.findViewById
>> (R.id.user_phone_number);
>>                        holder.statusText = (TextView) v.findViewById
>> (R.id.user_status);
>>                    }
>>
>>                    v.setTag(holder);
>>            }
>>                else
>>                {
>>                holder = (ViewHolder) v.getTag();
>>                }
>>
>>            if (holder.firstNameText != null) {
>>                holder.firstNameText.setText(user.getFirstName());
>>            }
>>            if (holder.lastNameText != null){
>>                holder.lastNameText.setText(user.getLastName());
>>            }
>>            if ( holder.phoneNumberText != null){
>>                 holder.phoneNumberText.setText(user.getPhoneNumber());
>>            }
>>            if (holder.statusText != null){
>>                holder.statusText.setText(String.valueOf(user.getStatus
>> ()));
>>            }
>>
>>            return v;
>>        }
>>
>>
>>         class ViewHolder {
>>            TextView firstNameText;
>>            TextView lastNameText;
>>            TextView phoneNumberText;
>>            TextView statusText;
>>        }
>>
>>        public long getItemId(int position) {
>>            return position;
>>        }
>>
>>    }
>>
>>
>> On 3 juin, 13:35, guna <gunaz...@gmail.com> wrote:
>> > Post your latest code... So that its easy to correct the errors....
>> Check
>> > whether enabled the listitems.....
>> >
>> > On Wed, Jun 3, 2009 at 4:59 PM, Tom <thomas.coz...@gmail.com> wrote:
>> >
>> > > I added to my class "implements AdapterView.OnItemClickListener".
>> > > Then I implemented "onItemClickListener" method and added in
>> > > "onCreate" "setOnClickListener(this)".
>> >
>> > > Now I can select and highlight items but only with the trackball.
>> > > Nothing happens with the mouse event.
>> >
>> > > On 3 juin, 13:23, guna <gunaz...@gmail.com> wrote:
>> > > > Ask clearly your questions........
>> >
>> > > > On Wed, Jun 3, 2009 at 4:45 PM, Tom <thomas.coz...@gmail.com>
>> wrote:
>> >
>> > > > > I just want to notice that the Layout for the ArrayAdapter
>> contains
>> > > > > checkbox.
>> >
>> > > > > On 3 juin, 11:33, Tom <thomas.coz...@gmail.com> wrote:
>> > > > > > Ok
>> > > > > > I added to my class "implements
>> AdapterView.OnItemClickListener".
>> > > > > > Then I implemented "onItemClickListener" method and added in
>> > > > > > "onCreate" "setOnClickListener(this)".
>> >
>> > > > > > Now I can select and highlight items but only with the
>> trackball.
>> > > > > > Nothing happens with the mouse event.
>> >
>> > > > > > May have implement "OnItemSelectedListener" too ?
>> >
>> > > > > > Thanks
>> > > > > > Tom
>> >
>> > > > > > On 2 juin, 16:47, guna <gunaz...@gmail.com> wrote:
>> >
>> > > > > > > Tom,
>> >
>> > > > > > > You didnt implements OnItemClickListener, and also in oncreate
>> add
>> > > > > > > setonitemclicklistener(this)....
>> >
>> > > > > > > On Tue, Jun 2, 2009 at 8:10 PM, Tom <thomas.coz...@gmail.com>
>> > > wrote:
>> >
>> > > > > > > > These are my line of codings :
>> >
>> > > > > > > > public class UserList extends ListActivity{
>> >
>> > > > > > > >    private Client client;
>> > > > > > > >    private ArrayList<User> users = new ArrayList<User>();
>> > > > > > > >    private UserAdapter userAdapter;
>> > > > > > > >    public static final int MENU_ITEM_VIEW = Menu.FIRST;
>> > > > > > > >    private static final int COLUMN_INDEX_TITLE = 1;
>> >
>> > > > > > > >    @Override
>> > > > > > > >    public void onCreate(Bundle savedInstanceState) {
>> > > > > > > >        super.onCreate(savedInstanceState);
>> > > > > > > >        setContentView(R.layout.user_list);
>> >
>> > > > > > > >        Intent i = getIntent();
>> > > > > > > >        if (i!= null)
>> > > > > > > >        {
>> > > > > > > >                if
>> > > > > (i.getAction().equalsIgnoreCase(Intent.ACTION_VIEW))
>> > > > > > > >                {
>> > > > > > > >                this.client = (Client) i.getSerializableExtra
>> > > > > > > > (Constants.CLIENT_CLASS_NAME);
>> >
>> > > > > > > >                this.userAdapter = new UserAdapter(this,
>> > > > > > > > R.layout.user_row, users);
>> > > > > > > >                users = (ArrayList<User>)
>> this.client.getUsers();
>> > > > > > > >                for(int j=0;j<users.size();j++)
>> > > > > > > >                {
>> > > > > > > >                        this.userAdapter.add(users.get(j));
>> > > > > > > >                }
>> > > > > > > >                setListAdapter(this.userAdapter);
>> > > > > > > >                }
>> > > > > > > >        }
>> > > > > > > >    }
>> >
>> > > > > > > >    private class UserAdapter extends ArrayAdapter<User>{
>> >
>> > > > > > > >        private LayoutInflater mInflater;
>> > > > > > > >        private ArrayList<User> items;
>> >
>> > > > > > > >        public UserAdapter(Context context, int resourceId,
>> > > > > > > > ArrayList<User> items)
>> > > > > > > >        {
>> > > > > > > >            super(context, resourceId, items);
>> > > > > > > >            mInflater = LayoutInflater.from(context);
>> > > > > > > >            this.items = items;
>> > > > > > > >        }
>> >
>> > > > > > > >        public boolean areAllItemsSelectable()
>> > > > > > > >        {
>> > > > > > > >            return true;
>> > > > > > > >        }
>> >
>> > > > > > > >        public boolean isEnabled(int position) {
>> > > > > > > >            if (position >= 0 && position <= items.size()) {
>> > > > > > > >                return true;
>> > > > > > > >            }
>> > > > > > > >            return false;
>> > > > > > > >        }
>> >
>> > > > > > > >        public int getCount() {
>> > > > > > > >            return items.size();
>> > > > > > > >        }
>> >
>> > > > > > > >        public User getItem(int position) {
>> > > > > > > >              if (0 == position) {
>> > > > > > > >                  return null;
>> > > > > > > >              }
>> > > > > > > >              return items.get(position);
>> > > > > > > >         }
>> >
>> > > > > > > >        @Override
>> > > > > > > >        public View getView(int position, View convertView,
>> > > ViewGroup
>> > > > > > > > parent) {
>> >
>> > > > > > > >            ViewHolder holder = null;
>> > > > > > > >            View v = convertView;
>> > > > > > > >            User user = items.get(position);
>> >
>> > > > > > > >            if (v == null) {
>> > > > > > > >                mInflater = (LayoutInflater)getSystemService
>> > > > > > > > (Context.LAYOUT_INFLATER_SERVICE);
>> > > > > > > >                v = mInflater.inflate(R.layout.user_row,
>> null);
>> >
>> > > > > > > >                    if (user != null) {
>> > > > > > > >                        // Creates a ViewHolder and store
>> > > references
>> > > > > to the
>> > > > > > > > two children views
>> > > > > > > >                        // we want to bind data to.
>> > > > > > > >                        holder = new ViewHolder();
>> > > > > > > >                        holder.firstNameText = (TextView)
>> > > > > v.findViewById
>> > > > > > > > (R.id.user_first_name);
>> > > > > > > >                        holder.lastNameText = (TextView)
>> > > > > v.findViewById
>> > > > > > > > (R.id.user_last_name);
>> > > > > > > >                        holder.phoneNumberText = (TextView)
>> > > > > v.findViewById
>> > > > > > > > (R.id.user_phone_number);
>> > > > > > > >                        holder.statusText = (TextView)
>> > > v.findViewById
>> > > > > > > > (R.id.user_status);
>> > > > > > > >                    }
>> >
>> > > > > > > >                    v.setTag(holder);
>> > > > > > > >            }
>> > > > > > > >                else
>> > > > > > > >                {
>> > > > > > > >                holder = (ViewHolder) v.getTag();
>> > > > > > > >                }
>> >
>> > > > > > > >            if (holder.firstNameText != null) {
>> > > > > > > >
>>  holder.firstNameText.setText(user.getFirstName());
>> > > > > > > >            }
>> > > > > > > >            if (holder.lastNameText != null){
>> > > > > > > >
>>  holder.lastNameText.setText(user.getLastName());
>> > > > > > > >            }
>> > > > > > > >            if ( holder.phoneNumberText != null){
>> >
>> > > > > holder.phoneNumberText.setText(user.getPhoneNumber());
>> > > > > > > >            }
>> > > > > > > >            if (holder.statusText != null){
>> >
>> > > > >  holder.statusText.setText(String.valueOf(user.getStatus
>> > > > > > > > ()));
>> > > > > > > >            }
>> >
>> > > > > > > >            return v;
>> > > > > > > >        }
>> >
>> > > > > > > >        private class ViewHolder {
>> > > > > > > >            TextView firstNameText;
>> > > > > > > >            TextView lastNameText;
>> > > > > > > >            TextView phoneNumberText;
>> > > > > > > >            TextView statusText;
>> > > > > > > >        }
>> >
>> > > > > > > >        public long getItemId(int position) {
>> > > > > > > >            return position;
>> > > > > > > >        }
>> >
>> > > > > > > >    }
>> >
>> > > > > > > >    @Override
>> > > > > > > >    public void onCreateContextMenu(ContextMenu menu, View
>> view,
>> > > > > > > > ContextMenuInfo menuInfo) {
>> > > > > > > >        AdapterView.AdapterContextMenuInfo info;
>> > > > > > > >        try {
>> > > > > > > >             info = (AdapterView.AdapterContextMenuInfo)
>> menuInfo;
>> > > > > > > >        } catch (ClassCastException e) {
>> > > > > > > >            Log.e(getClass().getSimpleName(), "bad menuInfo",
>> e);
>> > > > > > > >            return;
>> > > > > > > >        }
>> >
>> > > > > > > >        Cursor cursor = (Cursor) getListAdapter().getItem
>> > > > > > > > (info.position);
>> > > > > > > >        if (cursor == null) {
>> > > > > > > >            return;
>> > > > > > > >        }
>> >
>> > > > > > > >
>>  menu.setHeaderTitle(cursor.getString(COLUMN_INDEX_TITLE));
>> > > > > > > >        menu.add(0, MENU_ITEM_VIEW, 0,
>> > > > > > > > R.string.localization_user_view);
>> > > > > > > >    }
>> >
>> > > > > > > >    @Override
>> > > > > > > >    public boolean onContextItemSelected(MenuItem item) {
>> > > > > > > >        AdapterView.AdapterContextMenuInfo info;
>> > > > > > > >        try {
>> > > > > > > >             info = (AdapterView.AdapterContextMenuInfo)
>> > > > > > > > item.getMenuInfo();
>> > > > > > > >        } catch (ClassCastException e) {
>> > > > > > > >            Log.e(getClass().getSimpleName(), "bad menuInfo",
>> e);
>> > > > > > > >            return false;
>> > > > > > > >        }
>> >
>> > > > > > > >        switch (item.getItemId()) {
>> > > > > > > >            case MENU_ITEM_VIEW: {
>> > > > > > > >            }
>> > > > > > > >        }
>> > > > > > > >        return false;
>> > > > > > > >    }
>> >
>> > > > > > > >    @Override
>> > > > > > > >    protected void onListItemClick(ListView l, View v, int
>> > > position,
>> > > > > > > > long id) {
>> > > > > > > >        Uri uri =
>> > > ContentUris.withAppendedId(getIntent().getData(),
>> > > > > > > > id);
>> >
>> > > > > > > >        String action = getIntent().getAction();
>> > > > > > > >        if (Intent.ACTION_PICK.equals(action) ||
>> > > > > > > > Intent.ACTION_GET_CONTENT.equals(action)) {
>> > > > > > > >            setResult(RESULT_OK, new Intent().setData(uri));
>> > > > > > > >        } else {
>> > > > > > > >            startActivity(new Intent(Intent.ACTION_EDIT,
>> uri));
>> > > > > > > >        }
>> > > > > > > >    }
>> >
>> > > > > > > > }
>> >
>> > > > > > > > Thanks
>> > > > > > > > Tom
>> >
>> > > > > > > > On 2 juin, 15:51, guna <gunaz...@gmail.com> wrote:
>> > > > > > > > > Its good if you posted your line of codings?
>> > > > > > > > > listview.setOnItemClickListener()
>> >
>> > > > > > > > > Guna
>> >
>> > > > > > > > > On Tue, Jun 2, 2009 at 7:17 PM, Tom <
>> thomas.coz...@gmail.com>
>> > > > > wrote:
>> >
>> > > > > > > > > > Which listener do you think?
>> >
>> > > > > > > > > > In fact , when I scroll in the ListView with the mouse,
>> I can
>> > > see
>> > > > > > > > > > items highlighted.
>> > > > > > > > > > But when I click on the item, nothing happens (item's
>> color
>> > > > > doesn't
>> > > > > > > > > > change).
>> >
>> > > > > > > > > > On 2
>> >
>> > ...
>> >
>> > plus de détails »
>> >>
>>
>
>
> --
> Guna
>



-- 
Guna

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers-unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to