परिचय
रनटाइम पर व्यू के मार्जिन को बदलने के लिए, उसके `LayoutParams` को प्राप्त करें, मार्जिन सेट करें, और फिर `setLayoutParams()` कॉल करें।
कार्यान्वयन
चरण 1: लेआउट (activity_main.xml)
<ImageView android:id="@+id/imageView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/image" />
चरण 2: ड्रॉएबल में इमेज रखें
`res/drawable/` में एक इमेज फाइल (जैसे `image.png`) पेस्ट करें।
चरण 3: MainActivity.java
public class MainActivity extends AppCompatActivity {
ImageView imageView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = findViewById(R.id.imageView);
RelativeLayout.LayoutParams params = (RelativeLayout.LayoutParams) imageView.getLayoutParams();
params.setMargins(100, 100, 100, 100); // left, top, right, bottom in pixels
imageView.setLayoutParams(params);
}
}व्याख्या
- `getLayoutParams()` वर्तमान लेआउट पैरामीटर्स लौटाता है (पेरेंट लेआउट के प्रकार के अनुसार कास्ट करें, यहां `RelativeLayout.LayoutParams`।)
- `setMargins(left, top, right, bottom)` पिक्सेल में मार्जिन सेट करता है।
- `setLayoutParams()` परिवर्तन लागू करता है।
- DP में मार्जिन के लिए: `dpToPx(16)` जैसे रूपांतरण फ़ंक्शन का उपयोग करें।
नोट
यदि व्यू का कोई लेआउट पैरामीटर नहीं है (उदाहरण के लिए, प्रोग्रामेटिक रूप से जोड़ा गया), तो नया `LayoutParams` बनाएं।