Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 已应用setText方法,但活动为空_Java_Android_Methods_Parameters_Textview - Fatal编程技术网

Java 已应用setText方法,但活动为空

Java 已应用setText方法,但活动为空,java,android,methods,parameters,textview,Java,Android,Methods,Parameters,Textview,我是Android开发新手,我试图将参数从一个方法传递到另一个方法,以便最终在我的活动中包含文本,但当我运行应用程序时,它似乎是空白的 以下是我的Java代码: package com.example.bhroo.bhrawiijava; import android.graphics.Color; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.widget.T

我是Android开发新手,我试图将参数从一个方法传递到另一个方法,以便最终在我的活动中包含文本,但当我运行应用程序时,它似乎是空白的

以下是我的Java代码:

package com.example.bhroo.bhrawiijava;

import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;

import static android.R.id.message;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


    }

    public int calculatePrice() {
        int lamia = 5;
        int newQuantity = lamia * 3;
       priceMessage(newQuantity);
        return newQuantity;
    }

    public String priceMessage(int aly) {
        String message = "el order haiib2a be " + aly;
        displayText(message);
        return message;
    }

    public void displayText(String kimo) {
        TextView orderSummaryTextView = (TextView) findViewById(R.id.ahmed);
        orderSummaryTextView.setText(kimo);
    }


}
这是我的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:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.bhroo.bhrawiijava.MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:id="@+id/ahmed"
        android:layout_height="wrap_content"
         />
</RelativeLayout>

更改您的
onCreate
-方法如下:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    int price = calculatePrice(); 
    priceMessage(price);

}

更改您的
onCreate
-方法,如下所示:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    int price = calculatePrice(); 
    priceMessage(price);

}

必须根据需要调用方法,如果需要,可以从onCreate调用,只需将以下内容添加到onCreate方法:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //Add this
    calculatePrice();
}

我的英语太差了,我很抱歉。

您必须根据需要调用您的方法,如果您需要,可以从onCreate调用,只需将此添加到onCreate方法:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    //Add this
    calculatePrice();
}

我的英语太差了,很抱歉。

您没有调用您想要使用的方法。在您的
OnCreate()
中调用
calculatePrice()


您没有对要使用的方法进行任何调用。在您的
OnCreate()
中调用
calculatePrice()


方法的声明不会改变任何东西,您需要先调用它们。方法的声明不会改变任何东西,您需要先调用它们。