- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在学习 Android,并在名为 PlayActivity 的 Activity 中创建了一个包含两行的 TableLayout。在每一行中,我都放置了我希望在颜色中具有边框的 TextView,并在 colors.xml
中给出了后缀 Edge
。一切正常,除了 YELLOW
(文本)颜色不会导致 tv.setBackgroundResource(R.drawable.yellow_edge)
中的黄色边框颜色。
我正在制作一个游戏,用户最终进入 PlayActivity 并从“袋子”中抽取一些图 block 。这些图 block 有一个大写颜色的数字(例如 YELLOW
)和一个在 colors.xml
文件中定义的另一种颜色的边框。我检查了我的 yellow_edge 颜色是否不透明,确实是。我不明白为什么其他颜色可以,而这个不能。谁能帮我找出我的错误?我得到的输出是这样的: output
我的瓷砖类:
import android.graphics.Color.rgb
val BLUE: Int = rgb(0, 0, 255)
val RED: Int = rgb(255, 0, 0)
val YELLOW: Int = rgb(255,235,0)
val BLACK: Int = rgb(0, 0, 0)
class Tile(val col: Int = 0, val num: Int = 0){
val name = "$col $num"
}
我如何实例化我的磁贴:
class PlayActivity : AppCompatActivity() {
val COLOURS = listOf(BLUE, RED, YELLOW, BLACK)
val NUMBERS = IntRange(1, 13)
lateinit var nameTv: TextView
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_play)
val pack = makeTiles()
nameTv = findViewById(R.id.nameTextView)
val player = Player("Jack", plankGrid, this)
nameTv.text = player.name
player.drawTiles(14, pack)
}
private fun makeTiles(): MutableList<Tile>{
val a = mutableListOf<Tile>()
var count = 0
for (value in COLOURS) {
for (number in NUMBERS) {
count += 1
val tile = Tile(value, number)
a.add(tile)
}
}
a.shuffle()
return a
}
}
activity_play.xml
:
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
tools:context=".PlayActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="@string/app_name"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintHorizontal_bias="0.5" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginEnd="8dp" android:layout_marginStart="8dp" android:layout_marginTop="8dp"
android:layout_marginBottom="8dp" android:id="@+id/textView"/>
<TableLayout
android:layout_width="440dp"
android:layout_height="100dp"
app:layout_constraintEnd_toEndOf="parent" android:layout_marginEnd="8dp"
app:layout_constraintStart_toStartOf="parent" android:layout_marginStart="8dp"
android:layout_marginTop="8dp" app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintHorizontal_bias="0.5"
app:layout_constraintVertical_bias="1.0" android:orientation="horizontal" android:gravity="top|start"
android:id="@+id/plankGrid">
<TableRow android:id="@+id/row1" android:layout_width="match_parent" android:layout_height="match_parent"
android:orientation="horizontal"/>
<TableRow android:id="@+id/row2" android:layout_width="match_parent" android:layout_height="match_parent"
android:orientation="horizontal"/>
</TableLayout>
</android.support.constraint.ConstraintLayout>
我用 TextView 填充 TableLayout 的类:
import android.app.Activity
import android.view.Gravity
import android.view.View
import android.widget.TableLayout
import android.widget.TextView
import kotlinx.android.synthetic.main.activity_play.*
import kotlinx.android.synthetic.main.activity_play.view.*
class Player(val name: String = "Jack",
private var table: TableLayout,
private val ct: Activity,
private var count: Int = 0) {
fun drawTiles(n: Int, pack: MutableList<Tile>) {
for (i in IntRange(0, n-1)) {
addTileToTable(pack[i])
count += 1
}
}
fun addTileToTable(tile: Tile) {
val tv = TextView(ct)
tv.setTextColor(tile.col)
tv.textSize = 24.toFloat()
tv.text = tile.num.toString()
tv.textAlignment = View.TEXT_ALIGNMENT_GRAVITY
tv.gravity = Gravity.CENTER
tv.width = table.layoutParams.width / 15
tv.height = table.layoutParams.height / 2
when (tile.col) { // check colours and then set the border around the textview to that colour
BLUE -> tv.setBackgroundResource(R.drawable.blue_edge)
RED -> tv.setBackgroundResource(R.drawable.red_edge)
YELLOW -> tv.setBackgroundResource(R.drawable.yellow_edge) // this is where it apparently goes wrong
BLACK -> tv.setBackgroundResource(R.drawable.black_edge)
}
if (count <= 15) {
table.row1.addView(tv)
}
if (count in 16..30) {
table.row2.addView(tv)
}
}
}
colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#008577</color>
<color name="colorPrimaryDark">#00574B</color>
<color name="colorAccent">#D81B60</color>
<color name="bluebck">#2882D1</color>
<color name="blueEdge">#004780</color>
<color name="white">#ffffff</color>
<color name="redEdge">#E70000</color>
<color name="yellowEdge">#FFEB3B</color>
<color name="blackEdge">#000000</color>
</resources>
yellow_edge.xml
和 blue_edge.xml
比较:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<solid android:color="@color/white"/>
<corners android:radius="1dp"/>
<stroke android:width="1dip" android:color="@color/yellowEdge"/>
<padding android:left="1dp" android:right="1dp"/>
</shape>
</item>
</selector>
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<shape android:shape="rectangle">
<solid android:color="@color/white"/>
<corners android:radius="1dp"/>
<stroke android:width="1dip" android:color="@color/blueEdge"/>
<padding android:left="1dp" android:right="1dp"/>
</shape>
</item>
</selector>
最佳答案
好的,在使用您提供的代码创建新项目后,我发现了以下内容:
您将颜色定义为常量,然后必须将其导入到 Activity
和 Player
类中。
现在我的假设是,在其中一个类中,您导入 YELLOW
是错误的。您自己定义了这种颜色,但 import android.graphics.Color.YELLOW
也存在。我相信您错误地导入了它,而不仅仅是 import YELLOW
。
关于android - 调用后 TextView 边框颜色未设置为黄色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54607071/
我正在阅读 java swing,但在理解它时遇到问题。 Color 是一个类吗? Color[] col= {Color.RED,Color.BLUE}; 这在java中是什么意思? 最佳答案 Is
我正在研究用 python 编写的 pacman 程序。其中一个模块是处理吃 bean 游戏的图形表示。这当然是一些主机颜色。列表如下: GHOST_COLORS = [] ## establishe
本网站:http://pamplonaenglishteacher.com 源代码在这里:https://github.com/Yorkshireman/pamplona_english_teache
我最近将我的手机更新为 Android Marshmallow 并在其上运行了我现有的应用程序,但注意到颜色行为有所不同:将更改应用到 View (可绘制)的背景时,共享相同背景的所有 View (引
所有 X11/w3c 颜色代码在 Android XML 资源文件格式中是什么样的? I know this looks a tad ridiculous as a question, but giv
试图让 ffmpeg 创建音频波形,同时能够控制图像大小、颜色和幅度。我已经尝试过这个(以及许多变体),但它只是返回无与伦比的 "。 ffmpeg -i input -filter_complex "
我很好奇你是否有一些关于 R 中颜色酿造的技巧,对于许多独特的颜色,以某种方式使图表仍然好看。 我需要大量独特的颜色(至少 24 种,可能需要更多,~50 种)用于堆叠区域图(所以不是热图,渐变色不起
我看到的许多 WPF 示例和示例似乎都有硬编码的颜色。这些指南 - http://msdn.microsoft.com/en-us/library/aa350483.aspx建议不要硬编码颜色。在构建
我想更改文件夹的默认蓝色 如何设置? 最佳答案 :hi Directory guifg=#FF0000 ctermfg=red 关于Vim NERDTree 颜色,我们在Stack Overflow上
是否有关于如何将任意字符串哈希为 RGB 颜色值的最佳实践?或者更一般地说:3 个字节。 你问:我什么时候需要这个?这对我来说并不重要,但想象一下任何 GitHub 上的那些管图 network pa
我正在尝试将默认颜色设置为自定义窗口小部件。 这是有问题的代码。 class ReusableCard extends StatelessWidget { ReusableCard({this.
import javax.swing.*; import javax.swing.table.DefaultTableCellRenderer; import javax.swing.table.Ta
我有一个 less 文件来定义一堆颜色/颜色。每个类名都包含相关颜色的名称,例如 .colourOrange{..} 或 .colourBorderOrange{..} 或 navLeftButtOr
我有一个RelativeLayout,我需要一个黑色背景和一个位于其中间的小图像。我使用了这段代码: 其中@drawable/bottom_box_back是: 这样我就可以将图像居中了。但背
我需要设置 浅色 的 JPanel 背景,只是为了不覆盖文本(粗体黑色)。 此刻我有这个: import java.util.Random; .... private Random random =
我正在尝试制作一个自定义文本编辑器,可以更改特定键入单词的字体和颜色。如何更改使用光标突出显示的文本的字体和/或颜色? 我还没有尝试过突出显示部分。我尝试获取整个 hEdit(HWND) 区域并更改字
我想改变我整个应用程序的颜色。 在我的 AndroidManfiest.xml 中,我有正确的代码: 在 values 文件夹中,我有 app_theme.xml: @style/MyAc
是否可以使用 android 数据绑定(bind)从 xml 中引用颜色? 这很好用: android:textColor="@{inputValue == null ? 0xFFFBC02D : 0
有没有办法在 Android 应用程序中设置“空心”颜色? 我的意思是我想要一个带有某种背景的框,而文本实际上会导致背景透明。换句话说,如果整个 View 在蓝色背景上,文本将是蓝色的,如果它是红色的
我用CGContextStrokePath画在白色背景图片中的一条直线上,描边颜色为红色,alpha为1.0画线后,为什么点不是(255, 0, 0),而是(255, 96, 96)为什么不是纯红色?
我是一名优秀的程序员,十分优秀!