Android Build an Interactive Story App Finishing the User Interface Using a Model in the Presenter

Tetsuya Uno
Tetsuya Uno
21,024 Points

incompatible types: String cannot be converted to TextView

How can I convert String to TextView? Is this a right way to solve the quiz?
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class LandingActivity extends AppCompatActivity {

    public Button thrustButton;
    public TextView typeLabel;
    public EditText passengersField;

    public Spaceship spaceship;

    public void onCreate(Bundle savedInstanceState) {

        thrustButton = (Button)findViewById(;
        typeLabel = (TextView)findViewById(;
        passengersField = (EditText)findViewById(;

        // Add your code here!
        spaceship = new Spaceship();
        typeLabel = spaceship.getShipType();
public class Spaceship {
    private String shipType;
    private int numPassengers = 0;

    public String getShipType() {
      return shipType;

    public void setShipType(String shipType) {
      this.shipType = shipType;

    public int getNumPassengers() {
      return numPassengers;

    public void setNumPassengers(int numPassengers) {
      this.numPassengers = numPassengers;

    public Spaceship() {
      shipType = "SHUTTLE";

    public Spaceship(String shipType) {
      this.shipType = shipType;

1 Answer

Anthony Murray
Anthony Murray
931 Points

The issue you're experiencing comes from this line of code:

typeLabel = spaceship.getShipType();

What you're currently trying to do is assign a value of type String to a TextView, which as you've discovered is incompatible.

But there is a TextView method that you can use to setText in the Text View to the String you are interested in.

I've left my answer a little vague on purpose, but if you need a better refresher, go back to the Formatting Strings video and you can see how it was done.

I hope that helps!