大社区你好。我是Android的新手,并试图建立一个计算器,这是我第一次遇到这个问题,不确定是什么问题。我添加了buttons
,除image button
外,它们在模拟器上看起来很好。代码如下,我希望得到帮助。
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingTop="10dp"
android:weightSum="4">
<Button
android:id="@+id/button16"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_weight="1"
android:background="#00000000"
android:text="7"
android:textColor="@android:color/background_dark"
android:textSize="30sp"/>
<Button
android:id="@+id/button5"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_weight="1"
android:background="#00000000"
android:text="8"
android:textColor="@android:color/background_dark"
android:textSize="30sp"/>
<Button
android:id="@+id/button4"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_weight="1"
android:background="#00000000"
android:text="9"
android:textColor="@android:color/background_dark"
android:textSize="30sp"/>
<ImageButton
android:id="@+id/imageButton"
android:layout_width="80dp"
android:layout_height="80dp"
android:layout_weight="1"
android:background="#00000000"
android:textColor="@android:color/background_dark"
app:srcCompat="@drawable/divide"/>
</LinearLayout>
最后一个按钮除法是不可见的,我添加了四个这样的线性布局,包括1,2,3,减号,4,5,6,乘法按钮,所有这些乘法,除法,加号和减号buttons
不幸的是,我看不到。
我刚刚开始,并希望知道我在哪里错了,我需要解决的是什么。
更新
见上面我附上的图片。如果我将Views
更改为Buttons
,则模拟器中的可见ImageButton
为views
。我已经更改了我的png's
文件,但我无法解决我的错误
谢谢
答案 0 :(得分:0)
如果使用重量,请使用0dp的宽度(或垂直LinearLayout的高度)。
android:layout_width = "0dp"
android:layout_height ="80dp"
android:layout_weight ="1"
答案 1 :(得分:0)
你是否在Java类中声明了botton,你的Drawable也有png中的文件,这是处理img文件的最佳方式。
答案 2 :(得分:0)
我已经解决了这个问题,现在这个问题已经解决了,因为我只更改了一行ImageButton
android:src="@drawable/equalsymbol"
而不是app:srcCompat="@drawable/equalsymbol"
我已经提到过你了评论部分
请参阅下面附带的屏幕截图 - :
修改强>
现在,问题是app.srcCompat
无效的原因
这是因为您 extend
MainAcyivity.java
Activity
您必须 Extend
AppCompatActivity
和需要更新gradle.build
您必须添加以下行 - :
vectorDrawables {
useSupportLibrary = true
}
详细解答here
然后,我再次对您的应用进行一些更改
更改1
<强> MainActivity.java
强>
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
更改2
<强> style.xml
强>
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.DayNight.NoActionBar">
<!-- Customize your theme here. -->
<!--<item name="android:colorPrimary">@color/colorPrimary</item>-->
<!--<item name="android:colorPrimaryDark">@color/colorPrimaryDark</item>-->
<!--<item name="android:colorAccent">@color/colorAccent</item>-->
</style>
更改3
<强> build.gradle
强>
android {
defaultConfig {
vectorDrawables {
useSupportLibrary = true
}
}
}
现在,您可以在应用中使用app:srcCompat="@drawable/equalsymbol"
请参阅下面的第二个屏幕截图,我使用了app:srcCompat
,现在可以使用了
现在,一切正常。
所以,如上所述进行更改。快乐编码