رفتن به مطلب
  • 0

مشکل افزدون table row


elyasbeshkani

سوال

سلام

کد های منو ببینید

 

کد لایه اصلی :

 

            <TableLayout
                    android:id="@+id/dailyTableLayout"
                    android:layout_margin="8dp"
                    android:background="#E0E0E0"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent">

                <TableRow
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content">

                    <android.support.v7.widget.AppCompatTextView
                            android:layout_marginHorizontal="8dp"
                            android:layout_marginVertical="8dp"
                            android:gravity="center"
                            android:layout_weight="1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="جمع"
                            android:textSize="20sp"
                            android:textStyle="bold"
                            android:textColor="#000"/>

                    <android.support.v7.widget.AppCompatTextView
                            android:layout_marginHorizontal="8dp"
                            android:layout_marginVertical="8dp"
                            android:gravity="center"
                            android:layout_weight="1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="بهاء واحد"
                            android:textSize="20sp"
                            android:textStyle="bold"
                            android:textColor="#000"/>

                    <android.support.v7.widget.AppCompatTextView
                            android:layout_marginHorizontal="8dp"
                            android:layout_marginVertical="8dp"
                            android:gravity="center"
                            android:layout_weight="1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="مقدار"
                            android:textSize="20sp"
                            android:textStyle="bold"
                            android:textColor="#000"/>

                    <android.support.v7.widget.AppCompatTextView
                            android:layout_marginHorizontal="8dp"
                            android:layout_marginVertical="8dp"
                            android:gravity="center"
                            android:layout_weight="1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="کار انجام شده"
                            android:textSize="20sp"
                            android:textStyle="bold"
                            android:textColor="#000"/>

                    <android.support.v7.widget.AppCompatTextView
                            android:layout_marginHorizontal="8dp"
                            android:layout_marginVertical="8dp"
                            android:gravity="center"
                            android:layout_weight="1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="نام کارگر"
                            android:textSize="20sp"
                            android:textStyle="bold"
                            android:textColor="#000"/>

                </TableRow>

            </TableLayout>

 

کد لایه کاستوم:

 

<?xml version="1.0" encoding="utf-8"?>
<TableRow
        xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="match_parent"
          android:layout_height="wrap_content">

    <android.support.v7.widget.AppCompatTextView
            android:id="@+id/dailyTableTotal"
            android:layout_marginHorizontal="2dp"
            android:layout_marginVertical="2dp"
            android:background="#fff"
            android:gravity="center"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="10000"
            android:textSize="18sp"/>

    <android.support.v7.widget.AppCompatTextView
            android:id="@+id/dailyTablePrice"
            android:layout_marginHorizontal="2dp"
            android:layout_marginVertical="2dp"
            android:background="#fff"
            android:gravity="center"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="500"
            android:textSize="18sp"/>

    <android.support.v7.widget.AppCompatTextView
            android:id="@+id/dailyTableAmount"
            android:layout_marginHorizontal="2dp"
            android:layout_marginVertical="2dp"
            android:background="#fff"
            android:gravity="center"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="20"
            android:textSize="18sp"/>

    <android.support.v7.widget.AppCompatTextView
            android:id="@+id/dailyTableWork"
            android:layout_marginHorizontal="2dp"
            android:layout_marginVertical="2dp"
            android:background="#fff"
            android:gravity="center"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="کار تستی اول"
            android:textSize="18sp"/>

    <android.support.v7.widget.AppCompatTextView
            android:id="@+id/dailyTableWorker"
            android:layout_marginHorizontal="2dp"
            android:layout_marginVertical="2dp"
            android:background="#fff"
            android:gravity="center"
            android:layout_weight="1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="الیاس"
            android:textSize="18sp"/>

</TableRow>

 

کد کاستوم ویو :

 

package beshkani.elyas.ir.workshopapplication;

import android.content.Context;
import android.support.v7.widget.AppCompatTextView;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.TableRow;

public class CustomDailyTableRow extends TableRow {

    AppCompatTextView dailyTableTotal, dailyTablePrice, dailyTableAmount, dailyTableWork, dailyTableWorker;

    public CustomDailyTableRow(Context context) {
        super(context);
        init(context);
    }

    public CustomDailyTableRow(Context context, AttributeSet attrs) {
        super(context, attrs);
        init(context);
    }


    private void init(Context context) {

        LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View view = inflater.inflate(R.layout.custom_daily_table_row, this, true);

        dailyTableTotal = view.findViewById(R.id.dailyTableTotal);
        dailyTablePrice = view.findViewById(R.id.dailyTablePrice);
        dailyTableAmount = view.findViewById(R.id.dailyTableAmount);
        dailyTableWork = view.findViewById(R.id.dailyTableWork);
        dailyTableWorker = view.findViewById(R.id.dailyTableWorker);

    }

}

 

کد برنامه اصلی :

    private void createTableRow(String dailyTableTotal, String dailyTablePrice, String dailyTableAmount, String dailyTableWork, String dailyTableWorker) {

        customDailyTableRow = new CustomDailyTableRow(DailyReportActivity.this);
        customDailyTableRow.dailyTableTotal.setText(dailyTableTotal);
        customDailyTableRow.dailyTablePrice.setText(dailyTablePrice);
        customDailyTableRow.dailyTableAmount.setText(dailyTableAmount);
        customDailyTableRow.dailyTableWork.setText(dailyTableWork);
        customDailyTableRow.dailyTableWorker.setText(dailyTableWorker);

        layoutParams = new TableRow.LayoutParams(TableRow.LayoutParams.MATCH_PARENT, TableRow.LayoutParams.WRAP_CONTENT);
        dailyTableLayout.addView(customDailyTableRow);
    }

 

ولی بد نشون داده میشه : >> http://s8.picofile.com/file/8348008018/Capture.PNG

یعنی 5 تا مقدار من رو زیر یه ستون نشون میده در حالیکه باید هر مقدار زیر یک ستون باشه!

به صورتی دستی اضافه میکنه توی لایه xml درسته!

ولی به صورت برنامه نویسی درست نیست!

چیکار میتونم بکنم؟

کسی میتونه کمک کنه؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

0 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

هنوز برای این سوال پاسخی ارسال نشده است

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...