回答編集履歴

4

コード修正

2021/09/20 03:31

投稿

jimbe
jimbe

スコア13209

test CHANGED
@@ -82,9 +82,9 @@
82
82
 
83
83
 
84
84
 
85
- Button buttonFadeOut = findViewById(R.id.button);
85
+ Button button = findViewById(R.id.button);
86
86
 
87
- buttonFadeOut.setOnClickListener(new View.OnClickListener() {
87
+ button.setOnClickListener(new View.OnClickListener() {
88
88
 
89
89
  public void onClick(View view) {
90
90
 

3

コード内不要部分削除

2021/09/20 03:31

投稿

jimbe
jimbe

スコア13209

test CHANGED
@@ -18,11 +18,7 @@
18
18
 
19
19
  <?xml version="1.0" encoding="utf-8"?>
20
20
 
21
- <set xmlns:android="http://schemas.android.com/apk/res/android"
21
+ <set xmlns:android="http://schemas.android.com/apk/res/android">
22
-
23
- android:interpolator="@android:anim/decelerate_interpolator"
24
-
25
- android:shareInterpolator="true">
26
22
 
27
23
  <objectAnimator
28
24
 

2

リンク化

2021/09/19 17:33

投稿

jimbe
jimbe

スコア13209

test CHANGED
@@ -1,4 +1,4 @@
1
- <set> タグにおいて android:ordering が使えるのは「プロパティアニメーション」のほうで、<alpha> 等を使う「ビューアニメーション」では使えません。
1
+ <set> タグにおいて android:ordering が使えるのは「[プロパティアニメーション](https://developer.android.com/guide/topics/resources/animation-resource?hl=ja#Property)」のほうで、<alpha> 等を使う「[ビューアニメーション](https://developer.android.com/guide/topics/resources/animation-resource?hl=ja#View)」では使えません。
2
2
 
3
3
 
4
4
 

1

コード追加

2021/09/19 17:30

投稿

jimbe
jimbe

スコア13209

test CHANGED
@@ -1 +1,187 @@
1
1
  <set> タグにおいて android:ordering が使えるのは「プロパティアニメーション」のほうで、<alpha> 等を使う「ビューアニメーション」では使えません。
2
+
3
+
4
+
5
+ ----
6
+
7
+
8
+
9
+ プロパティアニメーションで1秒後に点滅するようにしてみました。
10
+
11
+ 動作が合っているか分かりませんが、プロパティアニメーションでは repeat 時は startOffset 分の待ちは入らないため、これだけなら android:ordering は必要無さそうです。
12
+
13
+
14
+
15
+ アニメータ(res/animator): flush.xml
16
+
17
+ ```xml
18
+
19
+ <?xml version="1.0" encoding="utf-8"?>
20
+
21
+ <set xmlns:android="http://schemas.android.com/apk/res/android"
22
+
23
+ android:interpolator="@android:anim/decelerate_interpolator"
24
+
25
+ android:shareInterpolator="true">
26
+
27
+ <objectAnimator
28
+
29
+ android:propertyName="alpha"
30
+
31
+ android:duration="300"
32
+
33
+ android:valueFrom="1.0"
34
+
35
+ android:valueTo="0.0"
36
+
37
+ android:repeatCount="5"
38
+
39
+ android:repeatMode="reverse"
40
+
41
+ android:startOffset="1000" />
42
+
43
+ </set>
44
+
45
+ ```
46
+
47
+ MainActivity.java
48
+
49
+ ```java
50
+
51
+ package com.teratail.q360318;
52
+
53
+
54
+
55
+ import androidx.appcompat.app.AppCompatActivity;
56
+
57
+
58
+
59
+ import android.animation.*;
60
+
61
+ import android.os.Bundle;
62
+
63
+ import android.view.View;
64
+
65
+ import android.view.animation.*;
66
+
67
+ import android.widget.*;
68
+
69
+
70
+
71
+ public class MainActivity extends AppCompatActivity {
72
+
73
+
74
+
75
+ @Override
76
+
77
+ protected void onCreate(Bundle savedInstanceState) {
78
+
79
+ super.onCreate(savedInstanceState);
80
+
81
+ setContentView(R.layout.activity_main);
82
+
83
+
84
+
85
+ TextView text = findViewById(R.id.text);
86
+
87
+
88
+
89
+ Button buttonFadeOut = findViewById(R.id.button);
90
+
91
+ buttonFadeOut.setOnClickListener(new View.OnClickListener() {
92
+
93
+ public void onClick(View view) {
94
+
95
+
96
+
97
+ AnimatorSet set = (AnimatorSet)AnimatorInflater.loadAnimator(MainActivity.this, R.animator.flush);
98
+
99
+ set.setTarget(text);
100
+
101
+ set.start();
102
+
103
+
104
+
105
+ /*
106
+
107
+ Animation flush = AnimationUtils.loadAnimation(MainActivity.this, R.anim.flush);
108
+
109
+ text.startAnimation(flush);
110
+
111
+ */
112
+
113
+ }
114
+
115
+ });
116
+
117
+ }
118
+
119
+ }
120
+
121
+ ```
122
+
123
+ レイアウト: activity_main.xml
124
+
125
+ ```xml
126
+
127
+ <?xml version="1.0" encoding="utf-8"?>
128
+
129
+ <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
130
+
131
+ xmlns:app="http://schemas.android.com/apk/res-auto"
132
+
133
+ xmlns:tools="http://schemas.android.com/tools"
134
+
135
+ android:layout_width="match_parent"
136
+
137
+ android:layout_height="match_parent"
138
+
139
+ tools:context=".MainActivity">
140
+
141
+
142
+
143
+ <TextView
144
+
145
+ android:id="@+id/text"
146
+
147
+ android:layout_width="wrap_content"
148
+
149
+ android:layout_height="wrap_content"
150
+
151
+ android:text="Hello World!"
152
+
153
+ android:textSize="30sp"
154
+
155
+ app:layout_constraintBottom_toTopOf="@id/button"
156
+
157
+ app:layout_constraintLeft_toLeftOf="parent"
158
+
159
+ app:layout_constraintRight_toRightOf="parent"
160
+
161
+ app:layout_constraintTop_toTopOf="parent" />
162
+
163
+
164
+
165
+ <Button
166
+
167
+ android:id="@+id/button"
168
+
169
+ android:layout_width="wrap_content"
170
+
171
+ android:layout_height="wrap_content"
172
+
173
+ android:text="animation"
174
+
175
+ app:layout_constraintBottom_toBottomOf="parent"
176
+
177
+ app:layout_constraintLeft_toLeftOf="parent"
178
+
179
+ app:layout_constraintRight_toRightOf="parent"
180
+
181
+ app:layout_constraintTop_toBottomOf="@id/text" />
182
+
183
+
184
+
185
+ </androidx.constraintlayout.widget.ConstraintLayout>
186
+
187
+ ```