problem accessing widget in Preference widgetLayout

by hacksoft » Sun, 18 Apr 2010 13:28:03 GMT


Sponsored Links
 Hi,

I can't seem to get a handle to the embedded widget (via widgetLayout)
in my preference.


My Preference XML is:

<PreferenceScreen
        xmlns:android=" http://schemas.android.com/apk/res/android" ;
        android:key="first_preferencescreen">

                <EditTextPreference android:key="displayname"
                                                android:title="Display Name"
                                                android:summary="Choose a 
display name" />


         <Preference    android:id="@+id/displayimageview"
                                        android:key="displayimagekey"
                        android:title="Display Image"
                        android:summary="Select Display Image"
                        android:widgetLayout="@layout/displayimage"
                         />

</PreferenceScreen>


My widget XML is:

        <LinearLayout xmlns:android=" http://schemas.android.com/apk/res/ 
android"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal"
                >

        <ImageButton android:id="@+id/displayimagebutton"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:padding="1dp"
                />

     </LinearLayout>


I'm trying to get a handle on the displayimagebutton to embed an
ImageButton in a preference row.


My java code is:
          View v1 = null;
          v1 = findViewById(R.layout.preferences);
          ImageButton ib = null;
          if (v1 == null)
                  Log.d(SUBSYSTEM_TAG, "v1 = null");
          else
          {
                  ib = (ImageButton)v1.findViewById(R.id.displayimagebutton);
          }

I can't seem to get a view to the preferences I setup in
preferences.xml.  in my OnCreate() I'm calling:
 addPreferencesFromResource(R.layout.preferences);

and this seems to work fine since the preferences layout is
represented on the screen.  However I can't get a View to this layout
as my java code is trying above, so I can find the embedded widget.

I've tried: v1 = findViewById(R.id.displayimageview);
but that just returns null also.

Any ideas on how I can get the ImageButton reference to my
displayimagebutton?

I'm really disappointed on the lack of an Android example for this.

Thanks!

John Roberts

--



problem accessing widget in Preference widgetLayout

by Noah » Wed, 02 Jun 2010 07:24:42 GMT


 Did you ever get this resolved? I'm having the same problem.

Thanks



>


Sponsored Links


problem accessing widget in Preference widgetLayout

by GodsMoon » Wed, 14 Jul 2010 21:34:38 GMT


  think you need to do findPreference instead of findViewById.
so like:
ib = (Preference) findPreference("displayimagekey");

Hope that helps.


On Jun 1, 3:20pm, Noah <noah.belc...@gmail.com> wrote:
> >



problem accessing widget in Preference widgetLayout

by AlanLawrence » Thu, 15 Jul 2010 16:45:38 GMT


 indPreference finds the Preference, findViewById is what you want to
get the button/widget...

however, it seems (I had a similar problem) that the widget isn't
being created at the time you addPreferences in your onCreate method,
only later; presumably if you wrote a custom Preference subclass,
you'd be able to grab the widget just as it was loaded by overriding
onBindView, or some other method; or you could write a custom widget
class that performs any load-time action you need in
onFinishInflate(!). However, if you can wait until the preference is
clicked, an easier option is to use an OnPreferenceClickListener, at
which point the same findViewById call does work...!

HTH, Alan

On Jul 14, 2:34pm, GodsMoon <godsm...@gmail.com> wrote:
> > >



Other Threads

1. question about sensor, orientationListener and light sensor

Hi all:

I studying set rotation by sensor now. I modify
mCurrentAppOrientation from SCREEN_ORIENTATION_UNSPECIFIED to
SCREEN_ORIENTATION_SENSOR. So OrientationListenerwill be enabled
at initial time. When enable mOrientationListener, sensorManager
should register a listener by registerListener and retuen true. But it
return false. I traced the code in SensorManager.java and found I do
not have a sensorList.
There are some questions:
1.How can I build up a sensor list (or I should ask : How can I init
SensorManager or SensorService)?
2.When enable mOrientationListener, there is a parameter :
SENSOR_ACCELEROMETER , is this parameter used for rotation detector?
What functin is SENSOR_ORIENTATION used for?.
3.Does android support SENSOR_LIGHT? If I want add light sensor, how
should I do?

Thanks a lot
--~--~---------~--~----~------------~-------~--~----~

2. Great Android Market Article

Try:
<a href="http://androidguys.com/?p=4198">7 Steps to Fix The Android
Market</a>

Great article and comments.

Cheers,
Wes


--~--~---------~--~----~------------~-------~--~----~

3. Ilegal

4. How to track memory consumption? (Bitmaps)

5. Question about path to take

6. How to set default orientation to landscape mode as part of build?

7. where can i find widget interface for NBA Game Schedule?