2017-05-26 135 views
0

我寻找的解决方案,但我无法正确理解,为什么发生。我试图把列表视图放在一个线性布局中,但它没有帮助。任何人都可以使用我的列表视图。为什么ListView中没有显示,虽然没有错误?

这里是我的XML - >

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@color/background_cards" 
android:orientation="vertical"> 


<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:layout_weight="2"> 

    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:src="@mipmap/ic_launcher" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="Card - 1" 
     android:textAlignment="center" 
     android:textColor="@color/crad_color" 
     android:textSize="34sp" 

     /> 
</RelativeLayout> 


<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:layout_weight="8" 
    android:orientation="vertical"> 

    <ListView 
     android:id="@+id/list_num" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:textAlignment="center"> 

    </ListView> 
</LinearLayout> 


<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="0dp" 
    android:layout_weight="2" 
    android:orientation="horizontal"> 

    <RelativeLayout 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="@drawable/ic_icon"> 


     <RelativeLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 

      > 


      <FrameLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:background="?actionBarItemBackground"> 

       <Button 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="start" 
        android:layout_marginBottom="8dp" 
        android:layout_marginEnd="16dp" 
        android:layout_marginStart="16dp" 
        android:text="Yes its there !" /> 

      </FrameLayout> 

      <FrameLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentRight="true" 
       android:background="?actionBarItemBackground" 

       > 

       <Button 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_marginBottom="8dp" 
        android:layout_marginEnd="16dp" 
        android:layout_marginStart="16dp" 
        android:text="NO ! its not" 

        /> 

      </FrameLayout> 

     </RelativeLayout> 

    </RelativeLayout> 

</LinearLayout> 


</LinearLayout> 

这里是我的Java代码 - >

package com.example.android.chooseanumber_magicalapp; 

import android.database.DataSetObserver; 
import android.os.Bundle; 
import android.support.annotation.Nullable; 
import android.support.v7.app.AppCompatActivity; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.Adapter; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 

import java.util.ArrayList; 

import static android.R.attr.id; 
import static android.R.id.list; 
import static android.icu.lang.UCharacter.GraphemeClusterBreak.T; 
import static com.example.android.chooseanumber_magicalapp.R.id.list_num; 

/** 
    * Created by great on 25-05-2017. 
*/ 

public class InstructionActivity extends AppCompatActivity{ 

ArrayList<String> list = new ArrayList<String>(30); 

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


    list.add("1"); 
    list.add("1"); 
    list.add("1"); 
    list.add("1"); 
    list.add("1"); 
    list.add("1"); 
    list.add("1"); 


    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, list); 

    ListView lv = (ListView) findViewById(list_num); 
    { 
     lv.setAdapter(adapter); 
    } 

} 

} 

编辑 - 从机器人工作室doesn't show anything in editor

截屏>

图像来自手机 - >

编辑__>

好球员,现在我得到如果我将改变风格

<resources> 

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.DayNight.DarkActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
</style> 

</resources> 

它显示列表项的问题!

之前它是

<resources> 

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.NoActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
</style> 

</resources> 

,但如果我想全屏幕(没有行动起来吧)?

+0

身高列表视图父母是0dp在Lineary布局。使它有一些硬编码的宽度来测试你的输出。 – Shriram

+0

有没有问题列表视图父母身高因为体重给出 –

+0

刚试过。但同样的事情发生! –

回答

0

问题是与listview转换。下面一行

ListView lv = (ListView) findViewById(list_num); 

改变

ListView lv = (ListView) findViewById(R.id.list_num); 
+0

他有一个静态导入的编号 – tompee

+0

如果是这样的话,编译器应该抛出异常 – djdere

+0

甚至尝试过,仍然是同样的问题。 –

0

试试这个,

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, list); 
ListView lv = (ListView) findViewById(R.id.list_num); 
lv.setAdapter(adapter); 
0

在你的代码改变这些行

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, list); 

    ListView lv = (ListView) findViewById(R.id.list_num); 
    lv.setAdapter(adapter); 
0
//1. Create arr (data source) 
final String arr[]={"Teo","Ty","Bin","Bo"}; 
//2. get listview by id 
ListView lv=(ListView) findViewById(R.id.lvperson); 
//3. put the data 
ArrayAdapter<String>adapter=new ArrayAdapter<String> 
(this, android.R.layout.simple_list_item_1, arr); 
//4. put it in listview 
lv.setAdapter(adapter); 

如果它不起作用,请仅使用listview进行测试!

+0

不,这也没有奏效。 –

+0

我没有得到你的问题, 只是: 1.由于ID 而无法获得listview 2.错误类型的适配器 你能给我更多的细节吗? –

0

它的工作变动只findviewbyID(LIST_ITEM)到findviewbyID(R.id.list_item)enter image description here

+0

我刚刚编辑了我的问题。你能帮我么? –

+0

请访问: - http://tips.androidhive.info/2013/10/android-make-activity-as-fullscreen-removing-title-bar-or-action-bar/ –