As a goal for my first Android application to learn the Android SDK, I am trying to create a simple RSS viewer for a specific url. Disregarding the networking side of the goal, I am having trouble with getting a listView to display a custom layout.
What I'd like to do is have each row of a list view show one of two images(read or unread), followed by some text. I'm not really having a problem, it's more that there aren't any examples that I could find (I might be looking in the wrong place) that covered custom layouts depending on conditions in code.
Any help?
Here is a free excerpt from one of my books that discusses the techniques involved. In a nutshell, you will need to extend your Adapter class (e.g., ArrayAdapter, CursorAdapter) and take direct control over the creation of rows, so you can apply your desired business logic.
Related
I am in a situation like i have to generate UI Controls like Button,Switcher,Progress Bar, Label text etc based on my list Items .
I am looking for a way to generate the controls in a View and add Views with generated controls in a Layout .
Can anyone give me a proper way to do that?
Why not to use Fragments?
Google docs about this here
and little tutorial here
You may want to take a look at the Metawidget source code. The Android version of Metawidget makes extensive use of generating Views and Layouts at runtime (e.g. see org.metawidget.android.widget.widgetbuilder.AndroidWidgetBuilder). You may even find Metawidget itself will suit your needs (it's designed to be embedded into projects for use-cases such as this).
I'm building an App for Android that already exists for iOS. On iOS, we really like to use the listview grouped style to show details and forms. It is really useful to show details of objects that we don't know how much properties they have before loading it.
I know that Android doesn't have a similar tableview style. And I don't want to use a custom library to recreate it, because I don't want to force an iOS like interface to my Android's users.
But how would you create a consistent Android interface that show similar information? Do you have example for me?
First of all, your instinct to not force iOS style UI onto Android users is correct and I respect you for it.
Android's ListView is roughly the equivalent of iOS's UITableView. There are important differences. For instance, you should never use a ListView inside another scrollable container. If a ListView is in a particular layout, it should (usually) be the only scrollable component. If you want multiple ListViews in a layout, you probably don't want ListViews at all. You should instead use (vertical) LinearLayouts and add the items in order.
Cyril Mottier writes excellent posts on implementing custom behavior for Android's ListView.
If you want to display data in a list then you can use the ListView. Here is a great article about how to use it.
i am pretty new to all this Monodroid stuff.
I am porting my Windows Phone Applications over to Android, so far so good as far as recreating the AXML UI but when trying to port my custom usercontrol, that inherit from the UserControl class, i can't seem to figure out how to do it.
Could someone give me a small example?
What i actually want to do is to create a custom reusable control that have a simple colored rectangle on the left and some text on its right.
I want to be able to populate a listview(don't know how to do that one either) by instanciating the control as many times as i need it.
I have no clue how to create the control itself and instanciate it to fill the listview programmatically.
Thanks in advance!
I would recommend reading through this set of tutorials on Xamarin's site for an introduction to how lists work in Android. Rather than using a custom "control", it sounds like all you really want is a custom row layout, which is covered in Part 3.
I want to create a expandablelistview that has more than two levels ,and the data is from the database, which has the id,name,parentid , but the default layout of the expandablelistview component is two levels , so how could i do
You cannot do it using the Expandalble List built in in Android.
You would have to write an adapter of your own. People have done it. I've seen several implementations of file browsers that have multi-layer expandable lists. Some might even have the code available so you could take a peek and see how it was done if you can't figure out how to do it yourself.
EDIT
Found some code. One of these should do the trick for you.
tree-view-list-android extends baseadapter
SO Answer with link to code for using a modified BaseExpandableListViewAdapter.
I'm new to android and need to create what in .net would be called a custom control. But I have two questions:
some articles refer to them as custom controls others custom componnets and other custom widgets. What should I be looking up?
Most questions on this topic are simply refered this page http://developer.android.com/guide/topics/ui/custom-components.html which is just a view class and is a bit like being handed a chinese dictionary when asked how to write chinese and told everything you need is there. Although true, I'm looking for a simple example something like an odd shapped button with one even attached to it. Surely there must be one such example?
If you really need custom view - look this document. But easier way - customize existing components, by providing specific backgrounds and providing special events.