আমি জাভা ব্যবহার করতে চেষ্টা করছি ( এক্সএমএল নয় ) স্ক্রিনটি পূরণ করে এবং মার্জিন রয়েছে এমন বোতামগুলির সাথে লিনিয়ারলআউট তৈরি করতে। এখানে কোডটি যা মার্জিন ছাড়াই কাজ করে:
LinearLayout buttonsView = new LinearLayout(this);
buttonsView.setOrientation(LinearLayout.VERTICAL);
for (int r = 0; r < 6; ++r) {
Button btn = new Button(this);
btn.setText("A");
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.FILL_PARENT, LinearLayout.LayoutParams.FILL_PARENT); // Verbose!
lp.weight = 1.0f; // This is critical. Doesn't work without it.
buttonsView.addView(btn, lp);
}
ViewGroup.LayoutParams lp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.FILL_PARENT);
setContentView(buttonsView, lp);
সুতরাং এটি দুর্দান্ত কাজ করে, তবে পৃথিবীতে আপনি কীভাবে বাটনগুলি মার্জিন দেবেন যাতে তাদের মধ্যে জায়গা থাকে? আমি চেষ্টা করার চেষ্টা করেছি LinearLayout.MarginLayoutParams
, তবে এর কোনও weight
সদস্য নেই তাই এটি ভাল নয়। এবং এটি কাজ করে না যদি আপনি lp
এটির কনস্ট্রাক্টারে পাসও করেন।
এটা কি অসম্ভব? কারণ এটি নিশ্চিতভাবে এটি দেখতে পেয়েছে, এবং এটি কেবলমাত্র এক্সএমএল-এ আপনি করতে পারেন এমন প্রথম অ্যান্ড্রয়েড লেআউট কাজ নয়।