- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在设计一个主屏幕带有 6 个图像按钮的应用程序,所有这些按钮都会启动新的 Activity 。
目前,当我按下按钮时,应用程序崩溃了。然而这很奇怪,因为我用常规按钮完成了这个项目并且它工作正常,而且我也做到了,所以当按下图像按钮时它只打印“已点击!”在你的屏幕上,这也工作正常,所以问题是开始一个新的 Activity 。
MainActivity.java
package com.example.darren1.homemanagementsystem;
import android.content.Intent;
import android.os.Bundle;
import android.app.Activity;
import android.widget.Button;
import android.widget.ImageButton;
import android.view.View.OnClickListener;
import android.view.View;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findAllViewsById();
}
private void findAllViewsById(){
ImageButton lightButton = (ImageButton) findViewById(R.id.lightButton);
lightButton.setOnClickListener(new View.OnClickListener() {
public void onClick (View v){
Intent intent = new Intent(MainActivity.this, LightingActivity.class);
startActivity(intent);
}
});
}
}
activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"
android:background="#feae5e"
android:clickable="true">
<GridLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentStart="true"
android:background="#feae5e"
android:layout_alignParentBottom="true"
android:layout_alignParentTop="true">
<ImageButton
android:layout_width="137dp"
android:layout_height="133dp"
android:id="@+id/cameraButton"
android:layout_row="0"
android:layout_column="0"
android:src="@drawable/rsz_cameraicon"
android:background="#feae5e" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/alarmButton"
android:layout_row="0"
android:layout_column="13"
android:src="@drawable/rsz_alarmicon"
android:background="#feae5e" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/fireButton"
android:layout_row="1"
android:layout_column="0"
android:src="@drawable/rsz_fireicon"
android:background="#feae5e"
android:layout_marginTop="40dp" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/lightButton"
android:layout_row="1"
android:layout_column="13"
android:src="@drawable/rsz_lightbulbicon"
android:background="#feae5e"
android:layout_marginTop="40dp"
/>
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/thermoButton"
android:layout_row="2"
android:layout_column="0"
android:src="@drawable/rsz_1thermometericon"
android:background="#feae5e"
android:layout_marginTop="40dp" />
<ImageButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tvButton"
android:layout_row="2"
android:layout_column="13"
android:src="@drawable/rsz_1tvicon"
android:background="#feae5e"
android:layout_marginTop="40dp" />
</GridLayout>
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.darren1.homemanagementsystem" >
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme" >
<activity android:name=".MainActivity" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".LightingActivity"
android:label="Light" >
</activity>
<activity android:name=".TelevisionActivity"
android:label="TV">
</activity>
</application>
activity_lighting.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.example.darren1.homemanagementsystem.LightingActivity"
android:background="#beddeb">
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
android:layout_alignParentStart="false"
android:id="@+id/linearLayout">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/lighting"
android:id="@+id/lightingView"
android:layout_gravity="center_horizontal"
android:textSize="32dp" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="150dp"
android:layout_height="200dp"
android:layout_below="@+id/linearLayout"
android:layout_alignParentStart="true"
android:layout_marginTop="66dp"
android:id="@+id/linearLayout2">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/kitchen"
android:id="@+id/kitchenLight" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/sittingroom"
android:id="@+id/sittingroomLight"
android:layout_marginTop="20dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/bedroom"
android:id="@+id/bedroomLight"
android:layout_marginTop="20dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/outside"
android:id="@+id/outsideLight"
android:layout_marginTop="20dp" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="150dp"
android:layout_height="200dp"
android:layout_alignTop="@+id/linearLayout2"
android:layout_alignEnd="@+id/linearLayout"
android:id="@+id/linearLayout3">
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/switch1" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/switch2"
android:layout_marginTop="20dp" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/switch3"
android:layout_marginTop="20dp" />
<Switch
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/switch4"
android:checked="false"
android:layout_marginTop="20dp" />
</LinearLayout>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true">
<Button
android:layout_width="150dp"
android:layout_height="wrap_content"
android:text="@string/backButton"
android:id="@+id/backButton"
android:layout_gravity="center_horizontal"
android:background="#010101"
android:textColor="#fefdfd"
android:textStyle="bold"
android:textSize="20dp" />
</LinearLayout>
LightingActivity.java 包 com.example.darren1.homemanagementsystem;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View.OnClickListener;
public class LightingActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getActionBar().setTitle("Light");
setContentView(R.layout.activity_lighting);
onClickListenerButton();
}
public void onClickListenerButton(){
Intent i = getIntent();
}
最佳答案
我猜问题出在这两行:
getActionBar().setTitle("Light");
setContentView(R.layout.activity_lighting);
您应该首先放置 setContentView()
,然后放置 ActionBar
的 Title
如果我是你,我会开始使用 [
Toolbar](http://developer.android.com/reference/android/widget/Toolbar.html)
setTitle()`:
按如下方式执行
ActionBar actionBar = getActionBar();
actionBar.setTitle("Light");
关于java - 安卓工作室 : Using ImageButton to start new activity crashes the app,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35479239/
我使用类 java 来自定义圆形图像按钮。现在我想将它转换为 ImageButton。但是给我错误ClassCastException。我需要帮助 !如果你有决心请给我。谢谢。 我用 rootView
我设置了一些样式来处理不同的 API(一种用于 v21,另一种用于任何低于该版本的 API)。我想为我的 ImageButton 设计一种样式,但它似乎没有按我预期的方式工作。 v-21 的风格是
所以我设置了 4 个普通图像按钮,然后是第 5 个图像按钮,它是一个拖放按钮。我希望 4 个非拖放图像按钮保留在特定位置,无论拖放图像按钮发生什么情况。当我移动拖放图像按钮时,其他图像按钮也会移动并且
我在后面的代码中创建了一个 ImageButton。现在我需要当客户端按下 ImageButton 时,ImageButton 将执行特定功能。问题是它不执行此特定功能。 这是代码- var img
我知道如何在单击时更改 ImageButton 的 src,但是当时我还想更改另一个 ImageButton 的 src。我不知道如何访问未单击的 ImageButton。我知道是身份证 编辑:值得一
其实我有两个问题: (1) 是否可以将另一个图像放在已经设置了 ImageUrl 的 ImageButton 之上(无需更改 ImageUrl - 字面上只是将第二个图像添加到“顶部”)?甚至通过使用
这是一张可以帮助你理解我的问题的图片: 我想将 ImageButton 中显示的图像拉伸(stretch)到 ImageButton 的整个区域。可以看到,编号为1的图片只占ImageButton的9
找不到以下类: - ImageButton(更改为android.widget.ImageButton、修复构建路径、编辑 XML) 当我使用 android:src="@drawable/chang
我正在开发一个应用程序,在某些时候它会显示一些“学习表”。问题是,对于每个项目,它应该显示两个按钮,这些按钮应该重叠在卡片 View 上,但它只适用于普通按钮,而使用图像按钮则不会发生这种情况。
如果我使用带有选择器的 ImageButton 作为其背景,是否有我可以更改的状态来改变它的外观?现在我可以让它在按下时更改图像,但似乎没有“突出显示”或“选择”或类似状态让我随意切换它的外观。 这是
我刚刚开始使用我的第一个音板。基本上这就是我到目前为止所拥有的(除了我有 40 个声音)。有谁知道更好的方法来做到这一点?我必须去约会,但我今天晚些时候会回来回复。谢谢你,任何可以帮助的人。 ----
我的“删除按钮(图像按钮)”的单击事件有问题。我知道大家对此还有其他疑问,但我什么也不明白! 我没听懂没有答案!我做了所有其他问题中指定的所有内容!此页面中的其他事件使“重定向”到示例,效果很好! 我
这是我的问题的后续: Asp:Label is not shown when visible is set to true? 在上面的问题中,我有一些控件的可见性未设置为 false,因为它们不在 U
我正在尝试创建一个测试应用程序,当我按下 ImageButton 时,会出现一条日志消息。简单。 我希望 ImageButton View 能够与类一起使用。 我是这样做的:更新了正确的 builde
嘿,我正在尝试进行对话。但整个对话框没有显示,只有底部 3 个图像按钮显示:这里出了什么问题?当我单击对话框内的按钮时,即使我做了一个开关盒,也没有任何反应。 customtype_dialog.xm
我正在尝试动态声明一个 ImageButton。 我声明它并为其分配一个 ID 和图像,如下所示: ImageButton btn = new ImageButton(); btn.ImageUrl
在我的应用程序中,我可以使用此类缩放 ImageView `公共(public)类 resizeAvatar 扩展 View { private final Drawable sfondoAvatar
我已将我的按钮设置为按 Facebook、Instagram、Twitter 和 Reddit 的顺序从上到下排列,但它没有这样做,它只显示 Facebook 和 Reddit,我不知道为什么。我有我
我是 Android 新手 我需要动态移动 ImageButton,就像当我单击按钮时它需要重新定位到一个新位置。我正在使用 AbsoluteLayout。 最佳答案 永远不要使用 AbsoluteL
我无法让 ImageButton 显示在屏幕右侧。如果我将 ImageButton 放在内部 LinearLayout 上方,它将显示在左侧,但是当我将它放在内部 LinearLayout 下方时,它
我是一名优秀的程序员,十分优秀!