मुझे एक सरल स्वाइप नमूना मिला जो मैंने बदल दिया ताकि मुझे नए एक्सएमएल लेआउट बनाने और उन्हें प्रदर्शित करने के लिए मुख्य लेआउट को फुलाया जा सके। मैं जो करना चाहता था वह भी स्वाइप प्रक्रिया के लिए प्रोग्रामेटिक रूप से लेआउट जोड़ने में सक्षम था।प्रोग्रामेटिक रूप से देखने के लिए सबसे अच्छा तरीका
मेरे पास main.xml लेआउट और एक लाल.एक्सएमएल और पीले.एक्सएमएल है जो एक ठोस रंग में एक टेक्स्टव्यू सेट के साथ एक सरल रैखिकआउट है।
नीचे दिया गया कोड काम करता है लेकिन मुझे नहीं लगता कि यह सही है या मैं जो करने की कोशिश कर रहा हूं उसे करने का सबसे अच्छा तरीका है। यदि कोई बेहतर तरीका सुझा सकता है जिसकी सराहना की जाएगी।
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//Create a layout with a solid blue background programmatically
TextView tv1 = new TextView(this);
tv1.setText("Blue");
tv1.setBackgroundColor(Color.BLUE);
tv1.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
LinearLayout ll = new LinearLayout(this);
ll.setOrientation(LinearLayout.VERTICAL);
ll.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
ll.addView(tv1);
//Create a layout with a solid green background programmatically
TextView tv2 = new TextView(this);
tv2.setText("Green");
tv2.setBackgroundColor(Color.GREEN);
tv2.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
LinearLayout ll2 = new LinearLayout(this);
ll2.setOrientation(LinearLayout.VERTICAL);
ll2.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
ll2.addView(tv2);
//inflate the flipper view and add the yellow and red xml layouts and also the 2 programmatically created layouts
fSpace = (ViewFlipper)findViewById(R.id.flipper);
inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(R.layout.yellow, fSpace);
inflater.inflate(R.layout.red, fSpace);
fSpace.addView(ll);
fSpace.addView(ll2);
}