Have you tried addrule?

On Jul 29, 4:47 pm, bpellow <[email protected]> wrote:
> Romain,
>
> Just like John and Pavel, I cannot figure out how to set some
> RelativeLayout XML attributes programmatically in Java.
>
> For example, I cannot find a programmatic way to define
> "layout_centerVertical=true" with only Java.  Here is some example XML
> from my relativeLayout file:
>
> <EditText
> android:id="@+id/widget29"
> android:layout_width="wrap_content"
> android:layout_height="wrap_content"
> android:text="EditText"
> android:textSize="18sp"
> android:layout_centerVertical="true"
> android:layout_centerHorizontal="true"
>
>
>
> Thanks,
> Ben
>
> On Jun 25, 10:09 am, Romain Guy <[email protected]> wrote:
>
> > I don't know of any XML property that cannot be set via the Java API.
>
> > 2009/6/24 Pavel Lahoda <[email protected]>:
>
> > > Romain,
>
> > > I have a same question as John ? How can I access some properties
> > > (such as here in RelativeView, but there are plenty of others) through
> > > the Java API ? It seems that some properties are only possible to set
> > > when constructing the view from the XML : this is pretty strange. Can
> > > you comment on that ? Thanks.
>
> > > Pavel
>
> > > On 17 čvn, 19:03, Romain Guy <[email protected]> wrote:
> > >> You did not give an id to imageView1, so imageView1.getId() returns an
> > >> invalid id.
>
> > >> On Tue, Jun 16, 2009 at 4:20 PM, JohnJYates <[email protected]> wrote:
>
> > >> > If a RelativeLayout must be generated at run time, what are the
> > >> > equivalent API calls for the attributes set in the XML Layout editor?
> > >> > Take for example this very simple RelativeLayout that places the
> > >> > second ImageView to the right of the first ImageView:
>
> > >> > <?xml version="1.0" encoding="utf-8"?>
> > >> > <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/
> > >> > android"
> > >> >   android:layout_width="fill_parent"
> > >> >   android:layout_height="fill_parent"
> > >> >   android:orientation="horizontal" android:background="@drawable/
> > >> > bg_sunrise" android:layout_gravity="center" android:gravity="center">
>
> > >> > <ImageView android:id="@+id/ImageView01"
> > >> > android:layout_width="wrap_content"
> > >> > android:layout_height="wrap_content" android:src="@drawable/icon"></
> > >> > ImageView>
>
> > >> > <ImageView android:id="@+id/ImageView02"
> > >> > android:layout_width="wrap_content"
> > >> > android:layout_height="wrap_content" android:layout_toRightOf="@id/
> > >> > ImageView01" android:src="@drawable/icon"></ImageView>
> > >> > </RelativeLayout>
>
> > >> > Of the many, many, many, many variations I tried, I had the most hope
> > >> > for this one, but it didn't work either:
>
> > >> >       protected void onCreate(Bundle savedInstanceState) {
> > >> >               super.onCreate(savedInstanceState);
> > >> >               this.requestWindowFeature(Window.FEATURE_NO_TITLE);
> > >> >               RelativeLayout layout = new RelativeLayout(this);
> > >> >               layout.setLayoutParams( new
> > >> >                               ViewGroup.LayoutParams
> > >> > ( LayoutParams.FILL_PARENT,
> > >> >                               LayoutParams.FILL_PARENT ) );
>
> > >> >           ImageView imageView1 = new ImageView(this);
> > >> >           imageView1.setImageResource(R.drawable.icon);
> > >> >           imageView1.setAdjustViewBounds(true); // set the ImageView
> > >> > bounds
> > >> > to match the Drawable's dimensions
>
> > >> >               RelativeLayout.LayoutParams params1 = new
> > >> > RelativeLayout.LayoutParams
> > >> > (LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
> > >> >               params1.addRule(RelativeLayout.ALIGN_PARENT_TOP);
> > >> >           layout.addView(imageView1, params1);
>
> > >> >           ImageView imageView2 = new ImageView(this);
> > >> >           imageView2.setImageResource(R.drawable.icon);
> > >> >           imageView2.setAdjustViewBounds(true); // set the ImageView
> > >> > bounds
> > >> > to match the Drawable's dimensions
>
> > >> >               RelativeLayout.LayoutParams params2 = new
> > >> > RelativeLayout.LayoutParams
> > >> > (LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
> > >> >               params2.addRule(RelativeLayout.RIGHT_OF,
> > >> > imageView1.getId());
> > >> >           layout.addView(imageView2, params2);
> > >> >           this.setContentView(layout);
> > >> >       }
>
> > >> > Can anyone offer the Java equivalent to the above XML?  Can anyone
> > >> > explain why there is no attribute, getter/setter, or method for
> > >> > accessing the properties that can be set in XML?  What is the most
> > >> > elegant solution for dynamically creating Layouts, Views, and other
> > >> > Resources on the Android platform when there is no Java programmatic
> > >> > equivalent?
>
> > >> --
> > >> Romain Guy
> > >> Android framework engineer
> > >> [email protected]
>
> > >> Note: please don't send private questions to me, as I don't have time to
> > >> provide private support.  All such questions should be posted on public
> > >> forums, where I and others can see and answer them
>
> > --
> > Romain Guy
> > Android framework engineer
> > [email protected]
>
> > Note: please don't send private questions to me, as I don't have time
> > to provide private support.  All such questions should be posted on
> > public forums, where I and others can see and answer them
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to