The click event is occurring as I tested with a toast message.

The problem seems to be with Background Resource.

Here is the code that I use to create the button:

Button button = new Button(this.mContext);
            button.setId(10000+columnIndex);
            button.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 20);
            button.setGravity(Gravity.CENTER);
            button.setText(item);
            button.setLayoutParams(new 
ViewGroup.LayoutParams(LayoutParams.WRAP_CONTENT, 
LayoutParams.WRAP_CONTENT));            
            button.setBackgroundDrawable(this.mButtonBackground);
            button.setTextColor(Color.WHITE);
            button.setClickable(true);
            button.setFocusable(true);
            button.setOnClickListener(new OnClickListener() {
                
                public void onClick(View arg0) {
                    Toast toast = Toast.makeText(arg0.getContext(), 
"Clicked", 5);
                    toast.show();
                    
                }
            });
            container.addView(button);

Here is how I get the drawable:
this.mButtonBackground = 
this.mResources.getDrawable(R.drawable.schedule_button);


And here is the code from schedule_button.xml:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android";>

    <item android:state_pressed="true">
        <shape android:shape="rectangle">
            <solid android:color="@color/gray" />
            <stroke android:width="1dp" android:color="@color/black"/>
        </shape>
    </item>
    <item android:state_focused="true">
        <shape android:shape="rectangle">
            <solid android:color="@color/gray" />
            <stroke android:width="1dp" android:color="@color/black"/>
        </shape>
    </item>
    <item>
        <shape android:shape="rectangle">
            <solid android:color="#00000000" />
            <stroke android:width="1dp" android:color="#00000000"/>
        </shape>
    </item>

</selector>


How can I give any visual feedback to the button's click event?


Thanks.



On Monday, May 7, 2012 1:30:31 PM UTC-3, MagouyaWare wrote:
>
> The problem is, the button is not clickable and doesn't change its state 
>> (at least visually as configured on Background Resource).
>>
>
>    - Try setting the android:focusable and android:focusableInTouchMode 
>    attributes to false.  
>    - Also, have you verified the button is not clickable?  Put a simple 
>    click listener on the button that displays a toast message to be sure... 
> It 
>    may just be a problem with your background resource.  
>    - Lastly, it may be a problem with having a horizontal scrolling 
>    widget inside a vertically scrolling widget but again, I'm not sure about 
>    that.  The horizontal scrollview may be stealing the touch events from the 
>    buttons...
>    
>
> Thanks,
> Justin Anderson
> MagouyaWare Developer
> http://sites.google.com/site/magouyaware
>
>
> On Mon, May 7, 2012 at 10:13 AM, Raffaele Sgarro <[email protected]
> > wrote:
>
>> If I understand correctly, you should simply add android:clickable="true" 
>> to your list item
>>
>> On Monday, May 7, 2012 3:43:31 PM UTC+2, Juliano Nunes wrote:
>>>
>>> Hi,
>>>
>>> I needed to create kind of a sub-list that allows horizontal scrolling, 
>>> so I created the following structure inside my ListViewItem template:
>>>
>>> <HorizontalScrollView android:id="@+id/schedule_**scrollView" ... >
>>>         <LinearLayout android:id="@+id/schedule_**minutes" ... >
>>>                 
>>>
>>>
>>>                     </LinearLayout>
>>>     </HorizontalScrollView>
>>>
>>> And I added dynamically several buttons to this LinearLayout 
>>> (schedule_minutes), which uses a Background Resource to indicate the button 
>>> state. The problem is, the button is not clickable and doesn't change its 
>>> state (at least visually as configured on Background Resource).
>>>
>>> How can I fix this?
>>>
>>  -- 
>> 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

Reply via email to