I try setWidth() and setheight() method but it not work
I found this to be the best solution because it also allows the button to be repositioned at the same time by simply changing its margin:
int buttonWidth = (int) (screenWidth / 3.0);
RelativeLayout.LayoutParams params = (LayoutParams) myButton.getLayoutParams();
params.width = buttonWidth;
params.leftMargin = buttonWidth;
myButton.setLayoutParams(params);
Try using LayoutParams. For example
button.setLayoutParams (new LayoutParams(50, LayoutParams.WRAP_CONTENT)
For me works perfect this:
ViewGroup.LayoutParams params = myButton.getLayoutParams();
//Button new width
params.width = 400;
myButton.setLayoutParams(params);