Я думаю, что это может помочь вам:
Сначала вы можете определить RelativeLayout в xml, со всеми элементами, которые вы хотите на нем, расположить так, как вы хотите.
Во-вторых, когда вы определили этот макет, вы можете разработать собственный класс, расширяющий RelativeLayout, и надуть этот макет в методе конструктора класса, что-то вроде этого:
public class MyCustomView extends RelativeLayout {
...
public MyCustomView(Context context) {
LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
addView(inflater.inflate(R.layout.your_layout, null));
oneTextView = (TextView) findViewById(R.id.oneTextView);
oneRadioButton = (RadioButton) findViewById(R.id.oneRadioButton);
...
}
...
}
На этом этапе вы можете использовать oneTextView, oneRadioButton и т. Д. В своем классе обычным способом.