从一个阵列中的特定项目使用TextView每月的月份

问题描述:

我是新的这个东西,我需要做一个应用程序,显示用户每个月的一个独特的短语,像今天是25,textView应该显示“土豆”。明天textView应该显示“胡萝卜”。下个月的第25天会展示同样的马铃薯,第26天会展示同样的胡萝卜。从一个阵列中的特定项目使用TextView每月的月份

这是我的代码:

当我启动我的手机上,它什么都不做。

public class MainActivity extends AppCompatActivity { 
    String q; 
    Resources con; 
    TextView frase1; 
    TextView frase2; 
    TextView frase3; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    frase1 = (TextView)findViewById(R.id.textView1); 
    frase2 = (TextView)findViewById(R.id.textView2); 
    frase3 = (TextView)findViewById(R.id.TextView3); 

    con = getResources(); 
    Calendar calendar = Calendar.getInstance(); 
    int day = calendar.get(Calendar.DAY_OF_MONTH); 
    if (Calendar.DAY_OF_MONTH == 1){ 
     q = con.getStringArray(R.array.dia)[1]; 
     frase1.setText(q); 
    } 
    if (Calendar.DAY_OF_MONTH == 2){ 
     q = con.getStringArray(R.array.dia)[2]; 
     frase1.setText(q); 
    } 
    if (Calendar.DAY_OF_MONTH == 3){ 
     q = con.getStringArray(R.array.dia)[3]; 
     frase1.setText(q); 
    } 
    } 
} 
+0

你面临什么问题? –

+0

不应该使用“if(day == 1)”而不是“if(Calendar.DAY_OF_MONTH == 1)”?? –

+0

Sachin,当我加载应用程序时,应该出现短语的文本视图不显示任何内容。 –

我认为你没有进入的if statement,因而没有被设置到TextView。尝试使用下面的else statement。试试这个 -

public class MainActivity extends AppCompatActivity { 
      String q; 
      Resources con; 
      TextView frase1; 
      TextView frase2; 
      TextView frase3; 
      @Override 
      protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 

    frase1 = (TextView)findViewById(R.id.textView1); 
    frase2 = (TextView)findViewById(R.id.textView2); 
    frase3 = (TextView)findViewById(R.id.TextView3); 

    con = getResources(); 
    Calendar calendar = Calendar.getInstance(); 
    int day = calendar.get(Calendar.DAY_OF_MONTH); 
    if (day == 1){ 
     q = getResources().getStringArray(R.array.dia)[1]; 
     frase1.setText(q); 
    } 
    else if (day == 2){ 
     q = getResources().getStringArray(R.array.dia)[2]; 
     frase1.setText(q); 
    } 
    else if (day == 3){ 
     q = getResources().getStringArray(R.array.dia)[3]; 
     frase1.setText(q); 
    } else { 
     q = getResources().getStringArray(R.array.dia)[3]; 
      frase1.setText(q); 
} 


} 

这并不answser你的问题,但你可以frase1.setText(con.getStringArray(R.array.dia)[日])全部更换IFS;

而且,尝试使用日志,以找到其价值创造的问题(例如,Log.i(TAG,日);)