Android :: Two Selectable Items In Each List In ListView
Dec 16, 2009
The way I want it is, per row there will be a text and is followed by a right arrow button, so that the user can click on that button to edit the content of that row. If the user is using the keypad, by using the left and right buttons on the keypad, he should be able to select the textview or the Button in that particular row. I have seen this in a couple of apps. The way I see that working on those apps appear as if they are maintaining two lists in parallel.
The reason i felt it this way is, if I am on row 1 of the list and if I press the right key on the phone keypad, then the right arrow button will get highlighted and now if I use the down key or if I keep pressing the down key, then the focus will scroll through that arrow button only as if that is an another parallel list constructed. I don't know if that is a good way to do it. I tried many for getting this to work, but couldn't succeed.
View 4 Replies
Jun 28, 2010
I am displaying an AlertDialog with a list of selectable items on my first page, choosing one item will load to another page, but the problem is that when I go back to first one I can no more see the AlertDialog.
View 2 Replies
View Related
Sep 2, 2010
I have a listview from an SQLDatabase using custom CursorAdaptor. I would like to go back to the activity that I used to create the items when I click on them in the listview. So that I can edit the entries. But nothing happen when I implement the OnItemClick method and the getItemId() on the CursorAdapter even though am not sure I am correct there. Here is my Code:
public void onItemClick(AdapterView<?> adapview, View view, int position, long rowId) {
Cursor c = adapter.retrieveRow(rowId); // retrieve row from Database
Intent edit = new Intent(this,NewItem.class);
edit.putExtra(DBAdapter.KEY_ID, rowId);
edit.putExtra(DBAdapter.Title, c.getString(c.getColumnIndex(DBAdapter.Title)));
edit.putExtra(DBAdapter.DATE, c.getString(c.getColumnIndex(DBAdapter.DATE)));
startActivity(edit); } public long getItemId(int id){ return id; }
View 1 Replies
View Related
Oct 16, 2010
I've got the following main.xml:
<?xml version="1.0" encoding="utf-8"?> <AbsoluteLayout
android:id="@+id/widget0" android:layout_width="fill_parent"
android:layout_height="fill_parent" xmlns:android="http://schemas.android.com/apk/res/android" >
<ListView android:id="@+id/listview" android:layout_width="315px"
android:layout_height="379px" android:layout_x="2px" android:layout_y="50px" >
</ListView> <TextView android:id="@+id/title" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="Select device:" android:textSize="17sp"
android:layout_x="-2px" android:layout_y="1px" >
</TextView> <Button android:id="@+id/refresh" android:layout_width="109px"
android:layout_height="wrap_content" android:text="Refresh" android:layout_x="209px android:layout_y="7px" >
</Button> </AbsoluteLayout>
The main class does nothing but drawing the layout. I've got the following class and layout for the listitems:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:padding="10dp" android:textSize="16sp" >
</TextView> package com.android.bluetoothp2p;
import android.app.ListActivity; import android.os.Bundle;
import android.view.View; import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter;
import android.widget.ListView; import android.widget.TextView;
import android.widget.Toast;
public class BTListView extends ListActivity {
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES)); ListView lv = getListView();
lv.setTextFilterEnabled(true); lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// When clicked, show a toast with the TextView text
Toast.makeText(getApplicationContext(), ((TextView) view).getText(),
Toast.LENGTH_SHORT).show(); } } ); }
Countries is just an array with a list of countries, some dummy values. Now, how do I make the list items of the BTListView class go in the ListView (with @+id/listview) of the main class? Now my list works, but it isn't clickable anymore. This is the code:
ListView lv = getListView(); lv.setTextFilterEnabled(true);
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// When clicked, show a toast with the TextView text
Toast.makeText(getApplicationContext(), "lolwat", Toast.LENGTH_SHORT).show();
} } );
View 1 Replies
View Related
Nov 13, 2010
I am getting XML data from url and displaying using a custom list adapter in a ListView. I need to display only 10 items in ListView. How I can do this?
View 2 Replies
View Related
Sep 1, 2010
When I use a ImageButton in the ListView row, the ros is no selectable. When I change it to a ImageView it is selectable. I have this simple row layout, and below is my list , am I missing something simple?
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent" android:layout_width="fill_parent"
android:orientation="horizontal" android:id="@+id/layoutrowtop">
<ImageButton android:id="@+id/imgDetailDisclosure"
android:layout_height="fill_parent" android:layout_width="48dip"
android:layout_gravity="center_vertical" android:background="#00000000">
</ImageButton>
<RelativeLayout android:layout_width="wrap_content"
android:layout_height="?android:attr/listPreferredItemHeight"
android:padding="6dip"> <TextView android:id="@+id/firstLine"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:ellipsize="marquee" android:textStyle="bold"
android:textSize="18dp" android:singleLine="true"
android:gravity="top" > </TextView>
<TextView android:id="@+id/secondLine" android:layout_height="fill_parent"
android:layout_below="@+id/firstLine" android:layout_width="wrap_content"
android:ellipsize="marquee" android:textStyle="italic"
android:textSize="14dp" android:singleLine="false"
android:gravity="top" android:lines="2"> </TextView>
</RelativeLayout> </LinearLayout>
<LinearLayout android:layout_height="wrap_content" android:orientation="horizontal"
android:layout_width="fill_parent"> <EditText android:id="@+id/search_box"
android:layout_height="wrap_content" android:layout_weight="1"
android:layout_width="fill_parent" android:hint="type to filter" android:inputType="text"/>
<ImageButton android:id="@+id/search_button" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:src="@drawable/icon_mag_glass"/>
</LinearLayout>
<!-- Set height to 0, and let the weight param expand it -->
<!-- Note the use of the default ID! This lets us use a ListActivity still! -->
<ListView android:id="@android:id/list" android:layout_width="fill_parent"
android:layout_height="0dip" android:layout_weight="1" />
View 2 Replies
View Related
Jul 1, 2010
I'm making a custom adapter so that I can display a list of items with icons which looks like the menu that comes up when you long click the home screen. For some reason though the list items are not clickable. The can be navigated to with the D-pad but they cannot be clicked in any way. I thought maybe the problem was with the AlertDialog I was using so I replaced a working adapter I had elsewhere but I have the same issue there. My adapter looks like this:
ArrayList<IconListItem> mItems; LayoutInflater mInflater;
public IconListAdapter(Context context, ArrayList<IconListItem> items) {
mInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mItems = items;
} public IconListAdapter(Context context) {
this(context, new ArrayList<IconListItem>());
} public void add(IconListItem item) { mItems.add(item);
notifyDataSetChanged(); return item;
} public void remove(IconListItem item) { mItems.remove(item); notifyDataSetChanged();
} @Override public int getCount() { return mItems.size();
} @Override public IconListItem getItem(int position) { return mItems.get(position);
} @Override public long getItemId(int position) { return position;
} @Override public View getView(int position, View convertView, ViewGroup parent) { View view;
if(convertView == null){ view = mInflater.inflate(R.layout.two_line_icon_list_item, null);
} else { view = convertView; } IconListItem item = mItems.get(position);
TextView lineOne = (TextView) view.findViewById(R.id.firstLine);
TextView lineTwo = (TextView) view.findViewById(R.id.secondLine);
ImageView iconImage = (ImageView) view.findViewById(R.id.icon);
lineOne.setVisibility(View.VISIBLE); lineTwo.setVisibility(View.VISIBLE);
iconImage.setVisibility(View.VISIBLE); lineOne.setText(item.getText());
if (item.getSubtext() == null) lineTwo.setVisibility(View.GONE);
else lineTwo.setText(item.getSubtext());
if (item.getIcon() == null) iconImage.setVisibility(View.GONE);
else iconImage.setImageDrawable(item.getIcon());
return view; }
And the XML it's inflating:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="6dip" >
<ImageView android:id="@+id/icon" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_marginRight="6dip" />
<LinearLayout android:orientation="vertical" android:layout_width="wrap_content"
android:layout_weight="1" android:layout_height="fill_parent" >
<TextView android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_weight="1"android:gravity="center_vertical"
android:id="@+id/firstLine" android:ellipsize="marquee" android:inputType="text" />
<TextView android:layout_width="wrap_content" android:layout_height="0dip"
android:layout_weight="1" android:ellipsize="marquee"
android:id="@+id/secondLine" android:inputType="text" />
</LinearLayout> </LinearLayout>
When I say they are not clickable, I mean that they items do not highlight in orange when I press them nor does onItemClick ever get called. In my code I have this, a different adapter for another purpose and it works perfectly
this.foos= foos; fa = new FooAdapter(this.foos); fooList.setAdapter(fa);
// View the details for an item when it is selected
fooList.setOnItemClickListener(new OnItemClickListener() {
@Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
Intent i = new Intent(MyActivity.this, MyOtherActivity.class);
i.putExtra("foo", ((fooAdapter)arg0.getAdapter()).getItem(arg2));
i.putExtra("list_position", arg2);
MyActivity.this.startActivityForResult(i, 0);
} } );
But when I swap out the first 3 lines for
IconListAdapter ila = new IconListAdapter(this);
ila.add(0, "Test 1", android.R.drawable.ic_menu_mylocation);
ila.add(0, "Test 2", android.R.drawable.ic_menu_edit);
ila.add(0, "Test 3", android.R.drawable.ic_menu_search);
groupList.setAdapter(ila);
I t stops working.
View 2 Replies
View Related
Oct 20, 2009
As a work around to the issue where a list item isn't focusable if it has a focusable child item (a comment by Romain Guy was that this was intended behavior, for accessibility reasons) I simply filled the listItem with two children, each of which is focusable - There's nowhere to directly touch on the listItem anymore, just it's children.
For the most part this is a useable workaround, effectively invisible to the user, except for one thing- Although you can scroll by swiping without issue, touching to *stop* the scroll no longer works- I imagine because the child item is capturing the touch event and not passing it to the parent listitem, at least while the scroll is in effect.
Is there a known workaround for this? Perhaps someway to "pass the baton" of the touch event back up to the parent listItem, or a way to change my design?
BTW- I know there's some built-in functonality for single/multiple choice listviews (checkbox listviews) - That doesn't actually help in my case. The app is a contact list, and the row children are a relativelayout (populated with contact info) and a clickable phone icon (a one-touch dial for the contact), which needs to be visible or invisible depending on whether the stored contact has a phone number.
View 2 Replies
View Related
Jan 30, 2010
I have a working ListActivity class. Each of the list item consists of an ImageView and a TextView. However, when I try to replace the ImageView with ImageButton, The list becomes unselectable. The onListItemClick or any other function no longer get called when press a list item (Although the track ball can still focus a list item, but nothing more can be done). I have searched the forum and also the internet and failed to find any such working example, apart from one guy reporting a similar problem but with no answer.Code...
View 6 Replies
View Related
Feb 2, 2010
I'm pretty new to Android dev and still working out a lot of things.I've got a main menu showing using the following code, but can't work out how to disable selected items in the menu. Can anybody help me with some sample code?
View 2 Replies
View Related
May 28, 2010
I'm just getting my feet wet with Android and have built a UI that contains a TabHost with three tabs. Each tab is powered by its own Activity. The first Tab contains a listview with a prepopulated set of rows and is built from a custom ArrayAdapter.
The problem I'm running into is that none of the ListView rows are tappable. In other words, when I tap on them there is no orange selection. If I use the scroll ball on my Nexus One it will select, but any touch gestures don't seem to be responding. All the UI is being handled using XML files with a main.xml housing the TabHost -> LinearLayout -> TabWidget/FrameLayout and a nearby_activity.xml file containing my ListView UI
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"............
View 1 Replies
View Related
Aug 27, 2009
I cannot get the data from SqLite using order by because the data is encrypted, so the sort wouldn't work there. Is it possible to sort the items in the ListView?
View 5 Replies
View Related
May 15, 2009
I've noticed after I've switched to 1.5 that if ListView item is not enabled the divider(s) for this item are not rendering. Is this intentional?
View 7 Replies
View Related
Jun 19, 2010
I want to achieve this kinda of row look in my app. I already have a ImageView/TextView layout, but I want that 'positive' little image in the right always being displayed at the exact same place!
View 1 Replies
View Related
Aug 16, 2010
When this displays the first two rows of the listview appear under the tabs, the Mercury, and Venus planets. How do I get the tabs to occupy the top and the listview rows to start after the tabs?
tablistmenu.xml:
<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TabWidget
android:id="@android:id/tabs"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<FrameLayout
android:id="@android:id/tabcontent"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:id="@+id/textview1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="" />
<TextView
android:id="@+id/textview2"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="" />
<TextView
android:id="@+id/textview3"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="" />
<TextView
android:id="@+id/textview4"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="" />
</FrameLayout>
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView
android:id="@+id/lstMain"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ListView>
</LinearLayout>
</TabHost>
tablistmenu.java: public class tablistmenu extends TabActivity {
private ListView mainListView ;
private ArrayAdapter<String> listAdapter ;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.tablistmenu);
TabHost mTabHost = getTabHost();
mTabHost.addTab(mTabHost.newTabSpec("tab_test1").setIndicator("Contacts", getResources().getDrawable(R.drawable.contact_32)).setContent(R.id.textview1));
mTabHost.addTab(mTabHost.newTabSpec("tab_test2").setIndicator("Credit Cards", getResources().getDrawable(R.drawable.credit_card_32)).setContent(R.id.textview2));
mTabHost.addTab(mTabHost.newTabSpec("tab_test3").setIndicator("Notes/Misc", getResources().getDrawable(R.drawable.notes_32)).setContent(R.id.textview3));
mTabHost.addTab(mTabHost.newTabSpec("tab_test4").setIndicator("Websites", getResources().getDrawable(R.drawable.globe_32)).setContent(R.id.textview4));
mTabHost.setCurrentTab(0);
// Find the ListView resource.
mainListView = (ListView) findViewById( R.id.lstMain);
// Create and populate a List of planet names.
String[] planets = new String[] { "Mercury", "Venus", "Earth", "Mars", "Jupiter", "Saturn", "Uranus", "Neptune"};
ArrayList<String> planetList = new ArrayList<String>();
planetList.addAll( Arrays.asList(planets) );
// Create ArrayAdapter using the planet list. listAdapter = new ArrayAdapter<String>(this, R.layout.simplerow, planetList);
// Set the ArrayAdapter as the ListView's adapter. mainListView.setAdapter( listAdapter );
// End
} } }
View 3 Replies
View Related
Aug 30, 2010
How to add items to a ListView in Android during runtime?
View 1 Replies
View Related
Jul 20, 2010
I have a listview that's using a custom adapter. I want to dynamically show/remove items from the listview. I've tried everything inside the getView() method in my view adapter. I've tried doing setVisiblity(View.GONE) on the view I'm returning. And it infact doesn't draw the view, but it allocates space for the view and it's just a blank black space.
Is this even possible to set items in listview invisible?
View 2 Replies
View Related
Nov 8, 2010
I seem to be having a problem with Android ListView. I'm trying to delete the selected item from ListView. The delete method is working and will allow me to delete as many items from my list as needed, but whenever I scroll to the bottom of the list (after atleast 1 item has been deleted) I get an Error that closes the Application.
Here is my code:
CODE:.............................
View 2 Replies
View Related
Aug 31, 2010
I would like to after I have updated by listAdapter I want to make sure that the list is scrolled all the way to the bottom so that it displays the last element entered in the list How can I do this ?I tried this but no luck.
View 1 Replies
View Related
Apr 4, 2012
I have some class LoginActivity.java. In the onCreate method I retrieve ListView:
ListView list = (ListView)findViewById(R.id.snListView); then:
list.setAdapter(adapter);
In addition there are login.xml layout - there are:
<ListView
android:id="@+id/snListView"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</ListView>
and sn_row.xml:
[Code]...
At the moment I have cell's height 100dp, I need that cell's height will depend on device, I mean I have here 5 cells showing at login screen in ListView and I need that these 5 rows will fit the ListView (cell's height = ListView's height/5).
View 1 Replies
View Related
Sep 23, 2010
Im using a custom listView with a Title and a Subtitle where you can read a brief explanation of the item.
For each item on the list, im displaying an alertDialog to select an option (different for each case). When the option is selected, i want to change the Subtitle for the option selected by the user.
This is what i tried:
CODE:.....................
For the first item on the list it works fine, when i select an option, the subtitle get replaced by that option, but when i make a selection in the alertDialogs of the other 2 items, the option selected replaces the subtitle of the first item!
View 1 Replies
View Related
May 31, 2009
After the listview is already initialized, is it possible to add items to it during runtime?
View 3 Replies
View Related
Apr 1, 2010
Can somebody please give me an example code of removing all ListView items and replacing with new items. I tried replacing the adapter items.Still no results.
My code is:
at first I am calling
populateList(){
results -populated arraylist with strings
ArrayAdapter<String> adapter = new ArrayAdapter<String>
(this, android.R.layout.simple_list_item_1, results);
listview.setAdapter(adapter);
adapter.notifyDataSetChanged();
listview.setOnItemClickListener(this);
}
View 6 Replies
View Related
Feb 3, 2009
I want to set the onclicklistner on the each item to be displayed in ListVIew. The code I have written is:
package munish.android;
import android.app.ListActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
public class List extends ListActivity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Use an existing ListAdapter that will map an array
// of strings to TextViews
setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, mStrings));
getListView().setTextFilterEnabled(true);
} private String[] mStrings = {
"ImageView", "Grid View", "List View", "Map View", "Image Switcher", "Queso Jalapeno", "Queso Majorero", };
View 4 Replies
View Related
May 26, 2009
I'm trying to make a list that contains elements not necessarily occupying the entire width of the screen, but even if using android:layout_width="wrap_content" on my elements, they always behave as if their width value were set to "fill_parent" instead. If I set a fixed value for the width, e.g. "100px", that value is indeed used, but I just can't get wrap_content to work.
Example simple list item:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/ android"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:background="#707"> <TextView android:id="@+id/text1"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentTop="true" android:layout_alignParentRight="true"
android:background="#770" android:text="Text1" /> <TextView android:id="@+id/text2"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentLeft="true" android:layout_below="@id/ text1"
android:background="#077" android:text="Text2" /> </RelativeLayout>
What am I missing here? How do I accomplish a list item with wrap_content behaviour, i.e., where the width of each RelativeLayout is adapted to the length of the strings in the contained text views?
View 3 Replies
View Related
Dec 11, 2009
My app starts with a blank listview with a Menu option to Add contacts to the ListView. Now, I want that my ListView gets saved every time I quit my App so that the next time I start my App, I see all the contacts from last time. I understand that Android lets you store and retrieve data. Just don't know how to move forward from here.
View 2 Replies
View Related
May 6, 2010
Given a listview that shows checkboxes next to a list of people, I want to be able to get the names (in Strings for example) of the people who are checked. I have set my listview mode to allow for multiple checks.
getCheckedItemPositions()
Will get the positions but I can't figure out how to iterate over the listview to get the names. Also Eclipse tells me that getCheckItemIds is not a valid method for ListView.
View 3 Replies
View Related
Jan 28, 2010
I have to drag and drop items of ListView, which typically have an image and text. How can I implement this.
View 3 Replies
View Related
Jun 24, 2010
I'm building a list that is sorted alphabetically. The list should show a divider containing the Letter that the following icons belong to.
I'm using a Cursoradapter that contains the already sorted result from the database. I plan on adding the divider to the list item and set it to visible if the shown letter changes. How do I know that I have a new Letter? Is there a better way then going forward or backward in the cursor and check if the item I show is the end or beginning of a new group?
View 1 Replies
View Related
Mar 4, 2010
How can i set the number of items to show in a list without to scroll?
Example: I have a list with 10 items.
I want that only 3 items appears and that I have to scroll to see the rest of the items.
View 1 Replies
View Related