如何使用选项卡式活动将两个文本传输到列表视图 [英] How to transfer two texts to a listview using tabbed activity

查看:64
本文介绍了如何使用选项卡式活动将两个文本传输到列表视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经使用带有两个标签的viewpager创建了一个标签式活动,我想从标签一(包含两个edittexts)向标签2(包含列表视图)发送两个文本作为标题和描述。 

my fragment_one.java:

< pre>
public void onViewCreated(View view,@ Nullable Bundle savedInstanceState){
super.onViewCreated(view,savedInstanceState);

Button btnPassData =(Button)view.findViewById(R.id.btnPassData);
final EditText inData =(EditText)view.findViewById(R.id.inMessage);
btnPassData.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v){
SM.sendData(inData.getText()。toString() .trim());
}
});

}

和fragment_two.java:


public void onViewCreated(View view,@ Nullable Bundle savedInstanceState){
super.onViewCreated(view,savedInstanceState);

listView =(ListView)view.findViewById(R.id.list_view);
adapter = new ArrayAdapter< String>(getActivity(),android.R.layout.simple_list_item_1,arrayList);

listView.setAdapter(adapter);
}

protected void displayReceivedData(String message){
arrayList.add(message);
adapter.notifyDataSetChanged();

}

我的custom_listview是:


< ImageView
android:id =@ + id / icon
android:layout_width =60dp
android:layout_height =60dp
android:padding =5dp/>

< LinearLayout android:layout_width =wrap_content
android:layout_height =wrap_content
android:orientation =vertical>

< TextView
android:id =@ + id / item
android:layout_width =wrap_content
android:layout_height =wrap_content
android:text =中文
android:textAppearance =?android:attr / textAppearanceMedium
android:layout_marginLeft =10dp
android:layout_marginTop =5dp
android:padding =2dp
android:textColor =#33CC33/>
< TextView
android:id =@ + id / textView1
android:layout_width =wrap_content
android:layout_height =wrap_content
android: text =TextView
android:layout_marginLeft =10dp/>
< / LinearLayout>

main activity.java:

公共类MainActivity扩展AppCompatActivity实现FragmentOne.SendMessage {

TabLayout tabLayout;
ViewPager viewPager;
ViewPagerAdapter viewPagerAdapter;

@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
工具栏工具栏=(工具栏)findViewById(R.id.toolbar);
setSupportActionBar(toolbar);

viewPager =(ViewPager)findViewById(R.id.viewPager);
viewPagerAdapter = new ViewPagerAdapter(getSupportFragmentManager());
viewPager.setAdapter(viewPagerAdapter);
tabLayout =(TabLayout)findViewById(R.id.tabs);
tabLayout.setupWithViewPager(viewPager);
}

@Override
public void sendData(String message){
String tag =android:switcher:+ R.id.viewPager +: + 1;
FragmentTwo f =(FragmentTwo)getSupportFragmentManager()。findFragmentByTag(tag);
f.displayReceivedData(message);
}
}





我的尝试:



我试过这个但它不起作用......! 
< pre> messageModel.setTitle(title.getText()。toString()。trim());
messageModel.setDesc(message.getText()。toString()。trim());

解决方案

重新发布< a href =https://www.codeproject.com/Questions/1214447/How-to-send-two-texts-to-a-listview-android>如何将两个文本发送到listview android [ ^ ]。

I have created a tabbed activity with viewpager with two tabs and I want to send two text as title and description from tab one(contains the two edittexts) to tab two(contains the listview).

 my fragment_one.java :

<pre>
public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
 
    Button btnPassData = (Button) view.findViewById(R.id.btnPassData);
    final EditText inData = (EditText) view.findViewById(R.id.inMessage);
    btnPassData.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            SM.sendData(inData.getText().toString().trim());
        }
    });
 
}

and fragment_two.java :


public void onViewCreated(View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);
 
    listView = (ListView) view.findViewById(R.id.list_view);
    adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, arrayList);
 
    listView.setAdapter(adapter);
}
 
protected void displayReceivedData(String message) {
    arrayList.add(message);
    adapter.notifyDataSetChanged();
 
}

and my custom_listview is :


<ImageView
    android:id="@+id/icon"
    android:layout_width="60dp"
    android:layout_height="60dp"
    android:padding="5dp" />
 
<LinearLayout android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical">
 
    <TextView
        android:id="@+id/item"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:layout_marginLeft="10dp"
        android:layout_marginTop="5dp"
        android:padding="2dp"
        android:textColor="#33CC33" />
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView"
        android:layout_marginLeft="10dp"/>
</LinearLayout>

main activity.java :

public class MainActivity extends AppCompatActivity implements FragmentOne.SendMessage{
 
    TabLayout tabLayout;
    ViewPager viewPager;
    ViewPagerAdapter viewPagerAdapter;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
 
        viewPager = (ViewPager) findViewById(R.id.viewPager);
        viewPagerAdapter = new ViewPagerAdapter(getSupportFragmentManager());
        viewPager.setAdapter(viewPagerAdapter);
        tabLayout = (TabLayout) findViewById(R.id.tabs);
        tabLayout.setupWithViewPager(viewPager);
    }
 
    @Override
    public void sendData(String message) {
        String tag = "android:switcher:" + R.id.viewPager + ":" + 1;
        FragmentTwo f = (FragmentTwo) getSupportFragmentManager().findFragmentByTag(tag);
        f.displayReceivedData(message);
    }
}



What I have tried:

I have tried this but it does not work ....!
<pre>messageModel.setTitle(title.getText().toString().trim());
                messageModel.setDesc(message.getText().toString().trim());

解决方案

Repost of How to send two texts to a listview android[^].


这篇关于如何使用选项卡式活动将两个文本传输到列表视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆