![]() |
| TextView, Button, RelativeLayout and LinearLayout without the use of xml |
So, I decide to share a simple code on how to create views like TextView, Button, LinearLayout and RelativeLayout written in java code.
Let's start!!!
Below code is on how to create Textview.
TextView textView(){
TextView textView = new TextView(this);
textView.setText("Textview");
return textView;
}
Below code is on how to create Button.
Button button(){
Button button = new Button(this);
button.setText("Button");
return button;
}
Below code is on how to create RelativeLayout
RelativeLayout relativeLayout(){
RelativeLayout relativeLayout = new RelativeLayout(this);
//*** SET THE SIZE
relativeLayout.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, 100));
//*** SET BACKGROUND COLOR JUST TO MAKE LAYOUT VISIBLE
relativeLayout.setBackgroundColor(Color.GREEN);
return relativeLayout;
}
Below code is on how to create LinearLayout
LinearLayout linearLayout(){
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setOrientation(LinearLayout.VERTICAL);
return linearLayout;
}
If you want to create like layout in not activity. Just replace "this" keyword by activity context.
Here is the complete code.
package com.example.createviewprogrammatically;
import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
public class MainActivity extends Activity {
LinearLayout linearLayout;
RelativeLayout relativeLayout;
TextView textView;
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// INITIALIZE VIEW'S
linearLayout = this.linearLayout();
relativeLayout = this.relativeLayout();
textView = this.textView();
button = this.button();
// ADD VIEW'S TO linearLayout
linearLayout.addView(textView);
linearLayout.addView(button);
linearLayout.addView(relativeLayout);
// SET linearLayout AS CONTENT VIEW
setContentView(linearLayout);
}
/*
* Create textview
*/
TextView textView(){
TextView textView = new TextView(this);
textView.setText("Textview");
return textView;
}
/**
* Create button
* @return
*/
Button button(){
Button button = new Button(this);
button.setText("Button");
return button;
}
/**
* Create relative layout
* @return
*/
RelativeLayout relativeLayout(){
RelativeLayout relativeLayout = new RelativeLayout(this);
// SET THE SIZE
relativeLayout.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, 100));
// SET BACKGROUND COLOR JUST TO MAKE LAYOUT VISIBLE
relativeLayout.setBackgroundColor(Color.GREEN);
return relativeLayout;
}
/**
* Create linear layout
* @return
*/
LinearLayout linearLayout(){
LinearLayout linearLayout = new LinearLayout(this);
linearLayout.setOrientation(LinearLayout.VERTICAL);
return linearLayout;
}
}
Download Source Code Here
Good luck and happy coding!!!

No comments:
Post a Comment