में लेआउट_वेट का उपयोग करता है मेरे पास एक लेआउट है जो मैं TableRows को TableLayout में गतिशील रूप से जोड़ने के लिए फुला रहा हूं। मैं कॉलम को वांछित चौड़ाई तक खींचने के लिए लेआउट_वेट का उपयोग करता हूं।सेंटर व्यू (चेकबॉक्स) जो टेबलरो कॉलम
तालिका ScrollView के अंदर रखी गई है, इसलिए मैं जेनरेट की गई पंक्तियों के बीच स्क्रॉल कर सकता हूं। मेरे पास एक टेबल हेडर भी है जिसे मैंने शीर्ष पर LinearLayout में रखा है। मैंने ऐसा इसलिए किया क्योंकि मैं हेडर स्क्रॉल नहीं करना चाहता हूं। यही कारण है कि मैं layout_weight के बजाय layout_span का उपयोग नहीं करता हूं।
समस्या TableRow में दृश्य में से एक एक CheckBox है कि है और मैं इसे केंद्रित करना चाहते हैं, लेकिन जब से layout_width विशेषता है '0' मैं layout_gravity = "केन्द्र" यह केंद्र के लिए उपयोग नहीं कर सकते।
यहाँ xml फ़ाइल है:
* रंग प्रतिनिधित्ववादी के लिए कर रहे हैं:
यह मैं इसे कैसे देखने के लिए चाहते हैं:
<?xml version="1.0" encoding="utf-8"?>
<TableRow xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/order_form_line_TableRow"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/order_table_row_product_description_TextView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0.22"
android:maxLines="2"
android:textSize="18sp" />
<CheckBox
android:id="@+id/order_table_row_present_CheckBox"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.08" />
<EditText
android:id="@+id/order_table_row_facings_EditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.10"
android:inputType="number" />
<EditText
android:id="@+id/order_table_row_free_cu_given_EditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.10"
android:inputType="number" />
<EditText
android:id="@+id/order_table_row_order_quantity_EditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.10"
android:inputType="number" />
<EditText
android:id="@+id/order_table_row_free_order_EditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.10"
android:inputType="number" />
<Spinner
android:id="@+id/order_table_row_wholesaler_Spinner"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0.15" />
<EditText
android:id="@+id/order_table_row_delivery_date_EditText"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.15"
android:ellipsize="end"
android:inputType="date"
android:singleLine="true" />
</TableRow>
यह कि यह कैसा दिखता है केवल उद्देश्य उन्हें अनदेखा किया जा सकता है।
अगर कोई मदद कर सकता है तो मैं इसकी बहुत सराहना करता हूं। आप
धन्यवाद। तुमने मुझे सही रास्ते पर सेट किया। मैं लेआउट_विड्थ = "0 डीपी" के साथ एक रिलेटिव लेआउट का उपयोग कर समाप्त हुआ क्योंकि 0-आधारित चौड़ाई आवश्यक थी और रिलेवेटलाइट लाइनरलाइट से अधिक हल्का वजन है। ऐसा लगता है कि प्रदर्शन पर इसका कोई प्रभाव नहीं पड़ता है। धन्यवाद फिर से – Bandreid
यह काम करता प्रतीत होता है, लेकिन दूसरे लेआउट में चेकबॉक्स को केवल एक ही कामकाजी समाधान क्यों encapsulating है? ऐसा करने के लिए उचित तरीके से एक हैक की तरह लगता है। –