CheckBox with Background attribute renders incorrectly?

by Droidnostics » Tue, 06 Oct 2009 01:18:10 GMT


Sponsored Links
 Beginners question: why does the CheckBox render the text (when setText is
invoked) behind the checkbox (instead of next to the checkbox) when an
background image is assigned?

Second question: how do I make it *not* render behind the checkbox (and
still use a background image)?

 

Layout code:

<?xml version="1.0" encoding="utf-8"?>

<CheckBox xmlns:android=" http://schemas.android.com/apk/res/android" ;

      android:id="@+id/check"

      android:layout_width="wrap_content"

      android:layout_height="wrap_content"

      android:text="This checkbox is: unchecked"

      android:background="@drawable/icon"

       />

 

 

Main class

import android.app.Activity;

import android.os.Bundle;

import android.widget.CheckBox;

import android.widget.CompoundButton;

import android.widget.CompoundButton.OnCheckedChangeListener;

 

public class TestCheckBox extends Activity implements
OnCheckedChangeListener 

{

      CheckBox m_checkBox;

      

    /** Called when the activity is first created. */

    @Override

    public void onCreate(Bundle savedInstanceState) 

    {

        super.onCreate(savedInstanceState); 

        setContentView(R.layout.main);

        

        m_checkBox = (CheckBox)findViewById(R.id.check);

     

        m_checkBox.setOnCheckedChangeListener(this);

    }

 

      public void onCheckedChanged(CompoundButton buttonView, boolean
isChecked) 

      {

            if (isChecked)

                  m_checkBox.setText("Checkbox is checked");

            else

                  m_checkBox.setText("Checkbox is unchecked");

      }

}


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



Other Threads

1. Unparsed aapt error(s)! Check the console for output - yet no errors displayed

I'm struggling a little with just what's going on with this...

- XP
- Eclipse 3.5
- Sun JRE
- java.runtime.version=1.6.0_18-b07

Basically I've not been doing anything too exciting or ambitious but a
few of my projects throw the somewhat mysterious "Unparsed aapt
error(s)! Check the console for output." error.

So I dutifully check the console and see no errors.  I even clear the
console and try running it, nothing.  So I Google and I discover I
should delete R.java, which I do and the console now says "R.java was
removed! Recreating R.java!" which makes sense.  And I try to run
again and get told I can't due to this bizarre aapt error that is
lurking somewhere.

I may be way off track here but my theory is that this is basically a
cached error.  I know that I had various errors thrown up due to my
creating empty xml files and the like, which did throw errors, but
I've fixed them.  The entire project appears error free apart from
this packaging error which tells me to check the empty console, trying
the fix everyone seems to suggest doesn't appear to get me anything so
I'll admit I'm confused.  Any pointers would be greatly appreciated.
Is it something stale that needs purging or do I have some obscure
error that isn't getting flagged?

TIA,
Kevin

-- 

2. Bind to system service

Hi,

is it possible somehow to bind to private system services?
What I want to do is listen to the activitymanagerservice and be
notified when other activites are started. I tried implementing the
IActivityController.aidl from the Sourcecode. It has methods like
activityStarting and activityResuming but this didn't really work. (I
used the idea from here: 
http://blog.codetastrophe.com/2008/12/accessing-hidden-system-service-apis-in.html
, problem is there is no proper private field one could use at least
c.getDeclaredFields() doesn't return anything useful from the activity
manager)

Any ideas how I can get notified of things going on in the Activity
Manager without having to do a getRunningTasks all the time? Because
this is the only workaround I came up with but it slows down the
phone.

Every help is appreciated. Many Thanks,
Chris


##IActivityController.aidl:

/*
**
** Copyright 2009, The Android Open Source Project
**
** Licensed under the Apache License, Version 2.0 (the "License");
** you may not use this file except in compliance with the License.
** You may obtain a copy of the License at
**
**     http://www.apache.org/licenses/LICENSE-2.0
**
** Unless required by applicable law or agreed to in writing,
software
** distributed under the License is distributed on an "AS IS" BASIS,
** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
** See the License for the specific language governing permissions
and
** limitations under the License.
*/

package android.app;

import android.content.Intent;
import android.app.IActivityWatcher;

/**
 * Testing interface to monitor what is happening in the activity
manager
 * while tests are running.  Not for normal application development.
 * {...@hide}
 */
interface IActivityController
{
    /**
     * The system is trying to start an activity.  Return true to
allow
     * it to be started as normal, or false to cancel/reject this
activity.
     */
    boolean activityStarting(in Intent intent, String pkg);

    /**
     * The system is trying to return to an activity.  Return true to
allow
     * it to be resumed as normal, or false to cancel/reject this
activity.
     */
    boolean activityResuming(String pkg);

    /**
     * An application process has crashed (in Java).  Return true for
the
     * normal error recovery (app crash dialog) to occur, false to
kill
     * it immediately.
     */
    boolean appCrashed(String processName, int pid, String shortMsg,
            String longMsg, in byte[] crashData);

    /**
     * An application process is not responding.  Return 0 to show the
"app
     * not responding" dialog, 1 to continue waiting, or -1 to kill it
     * immediately.
     */
    int appNotResponding(String processName, int pid, String
processStats);

        /**
     * Often you want to allow a service to call back to its clients.
     * This shows how to do so, by registering a callback interface
with
     * the service.
     */
    void registerActivityWatcher(IActivityWatcher watcher);

    /**
     * Remove a previously registered callback interface.
     */
    void unregisterActivityWatcher(IActivityWatcher watcher);
}

-- 

3. What xml encodings work for non-europian languages

4. Oh crap. I missed IO registration :(

5. Pictbridge-- anyone know how?

6. API

7. What phone to buy for development?