Android : How To Use ViewGroup In Phone
Sep 2, 2009How to use viewGroup in android
View 3 RepliesHow to use viewGroup in android
View 3 RepliesCan you please tell me how can I setHeight for a ViewGroup? I see there is a layout(l,t,r,b);
But that is different form setHeight(), since I don't know where should be the top/bottom of the viewGroup. I need to set the height of the ViewGroup and return that to ListAdapter.
I am able to get a GLSurfaceView to have a transparent background with:
CODE:............
when I set the Activity's window background to transparent and the GLSurfaceView is the contentView of the Activity.
But, let's say my GLSurfaceview is parented by a ViewGroup and I want GLSurfaceView bg to be transparent to see the Viewgroup's background - I am not able to do so with the code above. Is this a limitation or am I missing something?
How can one use a GLSurfaceView similar to a ViewGroup, in the sense of adding Views(CustomViews) over it? Is there any means to make the GLSurfaceView be the canvas on which the view draws its contents?
View 5 Replies View RelatedI have a ListActivity whose layout looks like. code...
However, my empty list view consist only of the ImageView listed first inside the nested LinearLayout.
This seems like a reasonable thing to do but I don't completely understand Android's layout rules yet.
I try to make the Content view of SlidingDrawer is a ViewGroup, for example , in the Launcher example it can have two GridView in the same SlidingDrawer my sample is to make android:content = "@id/layout" ,which is a LinearLayout but i found only the first child in the layout will be shown so i would like to ask is there any constrain to make SlidingDrawer can not have multiple views in its content?
View 3 Replies View RelatedI am new to Android, and I am trying to understand how to create a custom ViewGroup. I created MyViewGroup as follows: Code...
View 2 Replies View RelatedI am looking for Wrappable ViewGroup just like what TextView do. I need this for layout. This should be something like LinearLayout but wrappable to multiple lines. Or do I need something custom?
View 1 Replies View RelatedI have a ViewGroup (LinearLayout) which contains a couple of TextViews and one ImageView. I want to make this entire group clickable. However, clicks on the TextViews or ImageViews or on the area enclosed by the ViewGroup above doesn't result in the handler being called. Any suggestions on how I can make a whole ViewGroup clickable?
View 2 Replies View RelatedI am trying to add a view to a viewgroup but I am getting the following error when I run the application
Error: E/AndroidRuntime( 570): java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first. Code: public class ExampleApp extends ViewGroup{
private LayoutParams mLAyoutParams; AlbumArtImageView mAlbumArtThumnail;
static final String TAG = "ExampleApp";......................
I have the following structure defined in an xml layout file.
<RelativeLayout android:id="@+id/mainLayout"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content" android:layout_height="wrap_content">
<FrameLayout android:id="@+id/frame" android:layout_centerInParent="true" android:layout_width="wrap_content" android:layout_height="wrap_content" ></FrameLayout>
<Button android:id="@+id/button" android:layout_below="@id/frame" android:layout_width="wrap_content" android:layout_height="wrap_content" />
</RelativeLayout>
The FrameLayout is positioned correctly in the center of its parent. But the Button isn't getting positioned under it. Instead it's displaying in the top left corner. Am I doing something incorrectly or is this a bug with RelativeLayout?
I am trying to create a ListView and add it to a custom ViewGroup.
Here is my code:
CODE:.................
I've got the following node in my XML layout:
CODE:.................
TagLayout is a class that extends ViewGroup, and basically holds a bunch of buttons with text (a custom object that act as tags, but that's neither here or there).
The problem is that when there are too many buttons, the view no longer scrolls. I can confirm that I am adding tags but I can't see anything.
If I wrap the above within a ScrollView, the layout never renders. I tried adding the attributes android:isScrollContainer and android:scrollbars, but that doesn't change anything. Is there something I'm missing here?
I should also add that TagLayout is overriding the onMeasure() event. I guess I need to implement a scrolling mechanism there...?
I have a custom ViewGroup that I wrote, and have been able to use it to lay out child elements in code just fine. However, now I'd like to be able to use it for layout in XML. I would also like to be able to add some custom attributes to the XML file to better control my layout. How do I set up, both in XML and in code, a set of custom attributes? Bonus if it can be used with the built in designer in Eclipse.
View 1 Replies View RelatedI have small ViewGroup somewhere in the middle of the screen. this ViewGroup contains some Views that i'd like to animate.
now this ViewGroup in dispatchDraw() method manages any child Views animations, clipping them to ViewGroup's bounds.
my question is whether it is possible not to clip them to ViewGroup's bounds?
I want to share the same view.mTag value of a viewgroup to all the childs under that viewgroup.
Like all childs should call the getTag() of viewgroup to get the tag .How can i do that ?
In my custom ViewGroup, I am returning false after handling the MotionEvent.ACTION_DOWN event.
According to the javadoc: For as long as you return false from this function, each following event (up to and including the final up) will be delivered first here and then to the target's onTouchEvent().
However, I notice that all subsequent events ( MotionEvent.ACTION_MOVE and MotionEvent.ACTION_UP) are only delivered to my #onTouchEvent method. In #onTouchEvent , I always return true.
What could possibly be my bug? I am running on Android 1.5r2 SDK.
I have a few views and animations and I need to figure out a way to package them so I can use them throughout my app. I thought I should be able to use ViewGroup, however, things are getting a bit complicated as my animations need to repeat and to achieve that I have applied the technique with an AnimationListener posting to a Runnable when the animation stops so it plays again in a loop. Also they all have different startOffset values, and I'm not sure how a ViewGroup can handle that as well. What is the best practice for hadnling multiple views and animations?
View 4 Replies View RelatedI like to have a ViewGroup (like LinearLayout) that has rounded angles. The angle can cover content of the ViewGroup.
View 6 Replies View RelatedI want to have a ViewGroup with another View in it. The user should be able to move the other View around the ViewGroup, and fling it away. However, the inner View shouldnt only move, it should also scale and so on (so we dont restrain ourselves to just movements). I don't really know the best way to implement it.
First I though about using a ViewGroup pretty much as it is (i.e. take advantage of the already-written methods). Then I could do the flinging with an Animation. However, when I move the View around with my finger, wouldnt I have to do a requestLayout, since the View changes size when I move it? Or could I just set a transform?
The other alternative would be to override the draw-method and do most of the work myself. For instance, when the user moves his/her finger, I could get a cache of the View and just paint it on the Canvas (with some transform). However, how would I do the flinging then, without an Animation? I could use a Scroller/VelocityTracker, but What would "drive" the repaints? Which is the best way to do this? Also, I won't have just one View, but a couple of them, so I'd like the solution to be effective.
<?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"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
</LinearLayout>
Since the root element is a LinearLayout, which extends ViewGroup, why does main.xml get turned into a View instead of a ViewGroup? For example, in my main Activity class, I try to get the number of subviews that the LinearLayout contains like this:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ViewGroup vg = (ViewGroup) findViewById(R.layout.main);
Log.v("myTag", "num children: " + vg.getChildCount());
but it crashes when i call vg.getChildCount(). What is the right way of doing it?
Can someone help me with my Syntax/Methodology? I would like to set up a bunch of different views in a viewgroup. My code fails at the addView method.
Unfortunately, I can't find jack for examples (which is how I learn) using the ViewGroup class online.code...
Has anyone tried to write his own implementation of ViewGroup with some TextViews in it? I have a problem, that TextViews in such an implementation don't respect gravity attribute (TextView.setGravity(Gravity.CENTER);) and text is positioned in the top left corner.
If enyone is interested, I just overwrote method onMeasure() (for all my TextViews) and changed call from super.onMeasure() to setMeasuredDimension(int, int) and gravity started to work normally.
Basically, in my custom layout I use the following class to display text:
CODE:................................
My app's underlying view has bitmaps, lines, etc drawn on a canvas. I want to display images (icons) on top of this which will respond to Touch events. The number and positioning of such images will be variable depending on data in an SQLite database.
Am I correct in thinking that the way to achieve this is to have a ViewGroup to which I add first the basic view then for each icon an ImageButton object with an OnTouch listener and positioning defined by setting the margins in a RelativeLayout.LayoutParams object?
My code for each button reads as follows: This seems to work when the screen is initially drawn, and when the screen is subsequently redrawn (with new data) new buttons are added; however, the previous buttons are not removed.
I've tried calling Global.ThisApp.MyLayout.removeView with each in turn button as a parameter but Eclipse objects that a MyButton object cannot be a parameter for removeView.
How can I remove the existing buttons each time the underlying view is invalidated?
I have a ListView with two types of custom views. It inflates "icon_row" view if a drawable exists or a "text_row" if not. I came up w/ custom views for icon_row & text_row & include them in their XML like so :
Both of icon_row, text_row have a root LinearLayout that seem to be redundant. The row layouts can be directly attached ListView. This may be a case for "merge".
To use merge, I need a ViewGroup in inflate & that ViewGroup should be my ListView.
My question is how to obtain a reference to the ListView w/o making the adapter as an inner class to the main activity.
I've extended ViewGroup to achieve something like a FlowLayout.I put my custom ViewGroup into a ScrollView, dynamically add a bunch of content and it doesn't scroll.The content that flows off the screen is not viewable.What am I missing, how can I allow my ViewGroup to be compatible with ScrollView?
View 1 Replies View RelatedThread [<1> main] (Suspended (exception NullPointerException)) ArrayAdapter.createViewFromResource(int, View, ViewGroup, int) line: 355 ArrayAdapter.getView(int, View, ViewGroup) line: 323 ListView(AbsListView).obtainView(int, boolean[]) line: 1294 ListView.measureHeightOfChildren(int, int, int, int, int) line: 1198 My symptomremedyActivity.java looks like:................
View 2 Replies View RelatedI have a custom ViewGroup. The idea is to be able to place controls at absolute positions and then have the ViewGroup scale those controls based on the difference in the screen dimensions with respect to the original design dimensions. I am using the code below. In response to the 'onMeasure' message, I am storing the width and height of the view. Then on the 'onLayout' message I am computing new dimensions for the child controls and adjusting their sizes proportionally. This all works to some degree. However for certain controls (e.g. button controls), the control resizes, but the text inside does not remain centered within the control. I am thinking that there is some other call I need to make to update the child controls after I change their size.
View 3 Replies View RelatedI am using Android SDK 1.5. I am developing an activity with multiple content views. It will call setContentView() with different viewgroup instance for different functionality. It contains a text input dialog popped up by an option menu item. I didn't specify anything for IME in mainfest.xml & EditText attributes. I found at first, the soft keyboard for the text input dialog will overlap on the activity content view. But after several content view switch (by calling setContentView() with different ViewGroup instance), the soft keyboard will resize the activity content view. Why this inconsistent behavior happens?
...........................
I have a compound UI component built up from a ViewGroup containing a number of TextView, ImageView etc. components. Many of these have StateListDrawables as their images/backgrounds. Is there any way of making them select from this drawable based on the state of the parent ViewGroup rather than the component itself? Ideally I want to be able to change the visual state of all children of the ViewGroup (text colour, image etc) based on the state of the ViewGroup, preferably without having to hook up complex logical code. This seems like a fairly common sort of requirement, so I was hoping it would be straightforward in Android - am I going to be disappointed?
View 1 Replies View Related