gpt4 book ai didi

android - 以编程方式在 TableRow 中设置 TextView 引力

转载 作者:行者123 更新时间:2023-11-29 01:36:09 26 4
gpt4 key购买 nike

我知道这个问题已经被问过好几次了,但在我的情况下似乎无法正常工作。我试图让最后一列在以编程方式生成的表中右对齐。我知道我需要将 LayoutParams 应用于该行和所有内部子项,并且我知道我需要将 Gravity 设置为 TextView,而不是该行,但我已经尝试了所有我能想到但不能想到的排列似乎让最后一列右对齐。

这是我的 XML 布局:

<!--Open Hours-->
<LinearLayout
android:id="@+id/llOpenHourDetail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@id/llWebsiteDetail"
android:paddingBottom="10dp"
android:visibility="gone"
android:weightSum="4">

<TextView
android:id="@+id/tvOpenHourDetailIcon"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="@string/fa_clock"
android:textColor="@color/cp_blue" />

<TableLayout
android:id="@+id/tlOpenHoursDetail"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3" />
</LinearLayout>

然后在我的 Activity 中,我在一个循环中有以下代码

String currentPeriod = formattedOpen.format(open.getTime()) + " - " +
formattedClose.format(close.getTime());

TableRow.LayoutParams params = new TableRow.LayoutParams(
TableRow.LayoutParams.MATCH_PARENT,
TableRow.LayoutParams.MATCH_PARENT );

TableRow tableRow = new TableRow(getBaseContext());
tableRow.setLayoutParams(params);

TextView tvDayOfWeek = new TextView(getBaseContext());
tvDayOfWeek.setText(open.getDisplayName(
Calendar.DAY_OF_WEEK, Calendar.LONG, Locale.getDefault()));
tvDayOfWeek.setTextColor(getResources().getColor(R.color.black));
tvDayOfWeek.setLayoutParams(params);
tableRow.addView(tvDayOfWeek);

TextView tvPeriodHours = new TextView(getBaseContext());

tvPeriodHours.setText(currentPeriod);
tvPeriodHours.setTextColor(getResources().getColor(R.color.black));
tvPeriodHours.setGravity(Gravity.RIGHT);
tvPeriodHours.setLayoutParams(params);
tableRow.addView(tvPeriodHours);

tlOpenHoursDetail.addView(tableRow);

最佳答案

为了使 setGravity() 起作用,您必须首先在您的布局中修改 TextView 的宽度字段,如下所示:

android:layout_width="fill_parent"

现在您应该可以调用:

tvPeriodHours.setGravity(Gravity.RIGHT)

关于android - 以编程方式在 TableRow 中设置 TextView 引力,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27909357/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com