The standard pattern in Android is for a view to have APIs for setting its
attributes, which the activity calls when it wants.  This pattern occurs all
*over* the place -- see the innumerable sample code that does findViewById()
in Activity.onCreate() to retrieve and set up views.  This is how you attach
callbacks, set adapters in list view, set text in text views, and on and on
and on.

(And as has also been suggested to parse XML attributes for values to come
from the layout and/or theme.)

It is a better pattern than what you are wanting to do because you can then
actual use the view in multiple activities.

But, you know, if you *want* to do the approach you are taking, then have at
it.  There is no need to argue with people recommending the normal approach.
 It's your code.  Write it how you want.  I don't think you are going to get
people to recommend you do what you want, though.

On Wed, Apr 6, 2011 at 2:59 AM, Mike Bear <[email protected]> wrote:

> In my scenario, MyView will be only used in MyActivity.
> In addition, it's also the simplest way.
>
> Thanks for your help
>
>
> On Wed, Apr 6, 2011 at 5:51 PM, Kostya Vasilyev <[email protected]>wrote:
>
>> Ah.
>>
>> Well, you could have a setSomething method in the view, and push the value
>> from the activity's onCreate - as already suggested by Kumar.
>>
>> If MyView is only intended to be used by MyActivity, then your original
>> code seems fine (getting the context, casting to MyActivity and getting the
>> value). It's not "pretty", and it's not "pure", but why mess with something
>> that works?
>>
>> -- Kostya
>>
>> 06.04.2011 13:47, Mike Bear пишет:
>>
>>  The scenario is like the following:
>>>
>>> 1. MyView is one of the component in MyActivity.
>>> 2. MyActivity is created from other activity, with an intent containing
>>> all the information for the activity, including the parameter for MyView.
>>> 3. We shall pass the parameter to the constructor of MyView, for the
>>> construction of it.
>>>
>>> I thought of other ways, like use the shared preference, it seems also
>>> work. But not a good way.
>>>
>>
>>
>> --
>> Kostya Vasilyev -- http://kmansoft.wordpress.com
>>
>> --
>> 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
>>
>
>  --
> 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
>



-- 
Dianne Hackborn
Android framework engineer
[email protected]

Note: please don't send private questions to me, as I don't have time to
provide private support, and so won't reply to such e-mails.  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